我有一个Firefox插件,它在sub.example.com的每个页面上注入/执行jQuery脚本。由于设计不当,该脚本无法在网站的一个页面上运行。如果某个元素位于页面上,有没有办法阻止执行脚本?
编辑:我正在使用的脚本必须在 DOM加载之前执行。有没有办法访问HTML文件本身,并找出该元素是否存在?
答案 0 :(得分:8)
由于jQuery集合只是增强了数组,它们每个都有一个length
属性,它告诉你它匹配了多少个元素:
jQuery(document).ready(function($)
{
if ( $('#someElement').length ) return;
// All of your code should go here...
});
答案 1 :(得分:0)
由于您正在使用jQuery,我认为您的脚本包含在$(document).ready
回调中,如果是这样的话:
$(document).ready(function() {
if ($('#breakOnThisElem').length) {
return;
}
});
如果您的代码没有包含在这样的函数中:更改它! :)