最近做了一個公司網站,由於沒有后端,只能先寫靜態頁面,新聞內容來源於公眾號文章,文章實在是太多了,而且排版內容通過人工復制也工作量巨大,於是想通過iframe嵌入來實現展示。
<iframe id="iFrame" width="100%"></iframe>
在新聞文章頁面插入html和js就可以了。
function getUrl(URL) { let http = (window.location.protocol === 'http:' ? 'http:' : 'https:'); //調用跨域API let realurl = http + '//cors-anywhere.herokuapp.com/' + URL; axios.get(realurl).then((response) => { // console.log(response) let html = response.data; html = html.replace(/data-src/g, "src") .replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/g, '') .replace(/https/g, 'http'); //let html_src = 'data:text/html;charset=utf-8,' + html; let html_src = html; let iframe = document.getElementById('iFrame'); iframe.src = html_src; var doc = iframe.contentDocument || iframe.document; doc.write(html_src); doc.getElementById("js_content").style.visibility = "visible"; //var doc = iframe.contentDocument || iframe.document; //doc.body.innerHTML = html_src; //iframe.document.getElementsByTagName('body').innerHTML = html_src; }, (err) => { console.log(err); }); } //調用getUrl方法,url為微信公眾號文章鏈接 var url = "https://mp.weixin.qq.com/s/K1UR1mXAHIZXfC_Pts_1CA"; getUrl(url);
通過這個方法,頁面當中可以顯示文章了,圖片卻還是不顯示。再研究研究吧。。。