鍍金池/ 問答/HTML5  HTML/ 微信公眾號h5網(wǎng)頁被嵌入廣告 不知道什么原因

微信公眾號h5網(wǎng)頁被嵌入廣告 不知道什么原因

clipboard.png

全部用的http請求 clipboard.png

回答
編輯回答
離魂曲

全部用的http請求……這不知道原因么……

2017年6月16日 21:58
編輯回答
你的瞳

這個是因?yàn)?code>http劫持導(dǎo)致的。
HTTP劫持是在使用者與其目的網(wǎng)絡(luò)服務(wù)所建立的專用數(shù)據(jù)通道中,監(jiān)視特定數(shù)據(jù)信息,提示當(dāng)滿足設(shè)定的條件時,就會在正常的數(shù)據(jù)流中插入精心設(shè)計的網(wǎng)絡(luò)數(shù)據(jù)報文,目的是讓用戶端程序解釋“錯誤”的數(shù)據(jù),并以彈出新窗口的形式在使用者界面展示宣傳性廣告或者直接顯示某網(wǎng)站的內(nèi)容。 (來源于百度百科)

目前通用的解決方案:https

2017年8月18日 11:53
編輯回答
鐧簞噯
    var del_times = 0, deTimer = null;
    function adGo() {
        var iframe = document.getElementsByTagName('iframe')[0];
        if(iframe){
            console.log(iframe)
            
            //循環(huán) iframe 父類,直到找到body和body的下一級,然后整個嵌入的代碼刪除。
            var bodyNode = {tagName:''}, iframeParent, targetNode = iframe.parentNode;
            while (bodyNode.tagName != 'BODY'){
                bodyNode = targetNode;
                if(bodyNode.tagName != 'BODY'){
                    iframeParent = targetNode;
                    targetNode = targetNode.parentNode;
                }
            }
            if(iframeParent) //如果iframe有父類
                bodyNode.removeChild(iframeParent);
            else
                bodyNode.removeChild(iframe);
        }
        del_times++;
        if (del_times > 10) window.clearInterval(deTimer)
    }
    deTimer = self.setInterval(adGo, 2000);   //把這個2000, 調(diào)低一點(diǎn),比如200

把這一段js代碼 加到入<body></body>里邊,就能解決。~~

具體的解決方案和代碼在這里 https://juejin.im/post/5b06fe...

2017年3月8日 17:57