我正在飞机飞行,他们强迫每一页(包括此Stack Overflow页面)在其顶部放置横幅广告。
以下是我在Firefox中使用UserScript的代码,但它不起作用:
// ==UserScript==
// @name SW Ad remover
// @namespace seangates.com/sw_ad_remover
// @include *
// @require https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js
// ==/UserScript==
$(document).ready(function(){
$('script[src$="swa.py"]').remove();
$('div[id^="__swa"]').hide();
$('body').css('padding',0);
console.log('working');
});
有关为什么这不起作用的任何想法?即使我把它放在ready()块的开头,我甚至无法使console.log工作。
答案 0 :(得分:2)
Greasemonkey does not work with jQuery 1.4.4.
使用jQuery 1.3.2。
请注意,您必须先卸载然后重新安装脚本,以确保将正确的jQuery文件复制到PC中。
答案 1 :(得分:0)
当然,这里总是可以选择不使用jQuery,因为只有Greasemonkey实现了@require
规则。
var s = document.querySelectorAll('script[src$="swa.py"]'),
d = document.querySelectorAll('div[id^="__swa"]');
for(var i = 0; i < s.length; i++){
s[i].parentNode.removeChild(s[i]);
}
for(i = 0; i < d.length; i++){
d[i].style.display = 'none';
}
document.body.style.padding = '0px';
document.querySelectorAll
仅适用于IE8及更高版本,但这里没问题。此脚本尚未测试,但应该可以正常运行。