我的电脑已经用了快3年了,1.7单核,好慢。
网页上好多banner,对联等广告,里面都是嵌了狂耗cpu的flash,决定去掉它们。
前提:假设这些banner等广告位在div里面,div有id(考察了自己经常上的几个站点好像都这样的)
例如:spaces.live.com那个banner的id就是AdContainer;cn.reuters.com那个banner的id是banner,其他位置多用类似advert_12345的形式的id。
主要的js很简单,这个firefox的扩展也是只改了一下文档里的helloworld。
window.setInterval(function() { var getElementsByTagNameIdRegExp = function(tagname, idregexp) { var rt = []; var objs = content.document.getElementsByTagName(tagname); for(var j = 0; j < objs.length; j++) { if(typeof(objs[j].id) != 'undefined' && idregexp.test(objs[j].id)) { rt.push(objs[j]); } } return rt; }; //delelte ad from webpages
try { var ods = []; //spaces.live.com's banner ad
if(/spaces.live.com/.test(content.window.location.href)) { var o = content.document.getElementById('AdContainer'); if(o) { ods.push(o); } } //donews.com banner ad
if(/donews.com/.test(content.window.location.href)) { var o = content.document.getElementById('TopAds'); if(o) { ods.push(o); } var re = new RegExp('p[0-9]'); var rts = getElementsByTagNameIdRegExp('IFRAME', re); ods = ods.concat(rts); } //reuters.com's banner ad
else if(/reuters.com/.test(content.window.location.href)) { var o = content.document.getElementById('banner'); if(o) { ods.push(o); } var re = new RegExp('advert_[0-9]'); var rts = getElementsByTagNameIdRegExp('DIV', re); ods = ods.concat(rts); } //others sites...
//now deleting
for(var i = 0; i < ods.length; i++) { ods[i].parentNode.removeChild(ods[i]); } } catch(e) {} }, 500);
|
阅读(450) | 评论(0) | 转发(0) |