最近在优化公司网站的时候,总能看到页面有百度推广的广告弹出,但是没有添加过引入广告的代码啊?不给我钱,还要我给你百度打广告,不行,越看越恶心。
广告出现的原因:
(1)网站被黑,源码被人篡改
通过查看源码,发现源码有没有被篡改,如果被篡改,就需要找原因了,百度上都有解决办法,这里就不讲了。
(2)使用的网是内网,内网提供商家加的广告(最有可能),即访问网页时,返回的网页经过内网服务器,内网服务器对网页做了手脚
(3)使用的一些js插件会引入广告
这些插件会在页面加载完成之后,动态添加这些广告代码,通过js的setinterval()函数不间断的删除这些代码即可。
function remove_baidu()//×××广告的代码 { $("script[src^=http]").remove();//一般引入的都是本地js文件,<script>中的src没有必要使用http,所以<script>中src属性值以http开头,就可以认为是引入外来js文件 $("[src*=baidu]").remove();//src属性值中有baidu字样,全部删除 $('#remove_baidu').nextAll().remove();//引入广告的js文件一般都是在body的最后一个子元素下面添加广告代码,所以在最后一个子元素中添加id=remove,使用nextAll()找到该元素下面的所有兄弟级元素删除即可 } window.setInterval('remove_baidu()',500);//每隔500毫秒删除一次,保证只要出现广告,就会被删除