如何在iframe下加载的网页上禁用所有JS事件

时间:2018-11-11 13:55:33

标签: javascript jquery html addeventlistener event-listener

我有一个网页,其中包含JS click / mouseover / mouseout / scroll事件,并且它很少有JS库来加载轮播,引导模式弹出等。

我想停止该元素上的所有事件。

我成功取消了html上的一些单击事件的绑定,但是无法取消绑定用于滑动转盘/显示引导弹出窗口等的第三方JS的事件。

我尝试使用:

window.onload = function(){
    var anchors = document.getElementsByTagName("a");
    for(var a in anchors){
        anchors[a].onclick = function(e){
            e.preventDefault();
        }
    }

    var divs = document.getElementsByTagName("div");
    for(var d in divs){

        if (divs[d].removeEventListener) {
          console.log("click removed eee"); 
          // For all major browsers, except IE 8 and earlier
            divs[d].removeEventListener("click", function(){ console.log("click removed"); });
        } else if (divs[d].detachEvent) {                    // For IE 8 and earlier versions
          console.log("click detached eee"); 
            divs[d].detachEvent("click", function(){ console.log("click detached"); });
        }
    }
};

锚重定向成功停止。但是,div上的点击事件仍然有效。请帮我解决如何停止网页上的所有事件绑定。

这是Google的情况吗?

https://www.google.com/webmasters/markup-helper/tagger?sourceId=104528819

在那里下载了页面的结尾,使用iframe呈现了该页面并取消了所有事件的绑定。他们可能做了什么?

1 个答案:

答案 0 :(得分:0)

您没有提到的事情是,您在iframe中的同意是来自另一个域还是来自同一域?

如果说,如果您的iframe内容不是来自其他域。那么下面是适合您的解决方案。

cat /etc/group

有关更多详细信息,请参见API Reference

让我知道您的观点。谢谢。