利用JQeury屏蔽网页广告(针对手机端,pc端有很多很好用的插件,请自行google)

手机看小说(我才不会看小电影呢)时总会有各种广告,针对不同类型的广告,来用jquery移除它们。

工具:via浏览器(可以自定义js脚本)

第一种:

逻辑比较简单的广告,有固定的class或者id值,屏蔽很简单,这里不做讨论了

第二种:

逻辑稍微复杂的广告,有随机的class或者id值,但一般有固定的前缀,可以用属性选择器+正则来屏蔽:

//防止延迟加载
setTimeout('test()', 100);
function test() {
    //属性选择器不用多说了吧,关键是这里要用正则^=i表示值以i开头
    //某些广告直接remove()后,过几秒会再次刷出来,所以这里用hide;
	$("[id^=i]").hide();

}

第三种:

没有定义class和id 的广告。这种只能根据别的属性来定位了:一般来说广告肯定会有链接,可以根据链接的域名来匹配。但效果似乎不太好。

setTimeout('test()', 100);
function test() {
    //href*=html表示属性href的值在任意位置包含'baidu'
	$("div[href*=baidu]").hide();
}

第四种:

也是在我看来最最恶心的一种:先粘上这种广告的伪代码:

   

//

   

这种广告恶心之处在于,它是透明的、全屏的,不管你点哪个位置,都会跳转到广告页面。不过根据完全透明这个特性,也能很轻易的定位到它

setTimeout('test()', 2000);
function test() {
    //既然是完全透明,那么它background-color肯定是'255,255,255'了
	$("div[style*='255,255,255']").remove();
}

暂时就遇到过这么几种广告,遗漏之处欢迎补充

 

-----------------------------------偷偷告诉你们刘惜君人美歌甜是个完美的小仙女呢

你可能感兴趣的:(JQuery)