Opera用户脚本加载过于频繁
Opera userscript is loading too often
我做了用户脚本。我在 Opera 11.62 上对此进行了测试。我有一个代码:
(
function() {
var headID = document.getElementsByTagName("head")[0];
var newScript = document.createElement('script');
newScript.type = 'text/javascript';
newScript.id = 'myjQuery';
newScript.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js';
headID.appendChild(newScript);
newScript.addEventListener('load', function (e) {
jQuery (
function($) {
alert('loaded');
}
);
},false);
newScript.removeEventListener('load');
}
)();
我的问题是它显示警报消息的次数太多,每次警报标题中都有不同的域。
我知道这是Facebook和广告窗口的错。
我可以在加载站点上的所有脚本后加载用户脚本吗?
似乎问题在于Opera正在为每个iframe触发脚本。 将此代码添加到脚本顶部应该可以清除:
if (window.top != window.self) //-- Don't run on frames or iframes.
return;
此外,目前还不清楚您是否按照 Opera 预期的方式设置了脚本的目标。
除非您在 Greasemonkey 模式下运行脚本,否则请确保您的代码被域/URL 感知包装,如下所示:
if (location.hostname.indexOf('example.com') != -1) {
// YOUR CODE HERE
}
请参阅 Opera 手册中的"加载脚本"。
相关文章:
- 依赖于缓慢加载javascript的UI
- jQuery+Android.将功能(Touchstart、touchmove)应用于实时加载的内容
- AMD应用程序在浏览器中的加载速度是否快于CommonJS应用程序
- 如何使AngularJS控制器依赖于通过ajax加载在rootScope上的值
- ng类应用于页面加载,表达式不真实
- 在调整大小和加载时移动 DOM 元素.仅适用于调整大小
- 将 var 的值应用于加载页面中的另一个变量
- 如何防止用查询加载的css应用于整个页面
- 如何使jQuery代码适用于动态加载的HTML
- 使j查询ajax调用既适用于页面加载,也适用于单击按钮
- 有没有办法防止TinyMCE自动专注于页面加载
- 哪个 jQuery 事件处理程序适用于页面加载
- 如何将灰度脚本应用于动态加载的图像
- Material Design Lite JS未应用于动态加载的html文件
- jQuery锚点偏移仅适用于页面加载浏览问题
- 未能专注于页面加载
- document.ready()等价于AJAX加载的内容
- Jquery函数效果不应用于动态加载的内容
- 将代码应用于动态加载的图像
- JS如何使
元素专注于页面加载时