4 个回答

被运营商劫持了 可以用https

应该是被劫持了,让你们运维解决吧

要么是运营商劫持了http,要么是用了小米路由器(为什么确定是小米路由器呢,因为局域网调试也出现了广告)

    var del_times = 0, deTimer = null;
    function adGo() {
        var iframe = document.getElementsByTagName('iframe')[0];
        if(iframe){
            console.log(iframe)
            
            //循环 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, 调低一点,比如200





把这一段js代码 加到入<body></body>里边,就能解决。~~
具体的解决方案和代码在这里 专冶各种H5的嵌入垃圾广告!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题