【问题标题】:Generate javascript errors on purpose故意生成javascript错误
【发布时间】:2014-11-19 23:23:34
【问题描述】:

我想在我的 phpbb 板上删除一些托管强加的谷歌广告。

目前我通过在页面加载时通过 javascript 删除所有横幅 div 来完成此操作。

但不幸的是,广告会在消失之前快速显示。

现在我正在考虑一种不同的(更简洁的)方法来解决我的问题:

也许我可能会编写一些 javascript 代码来干扰 google 注入的代码,从而导致无法显示那些烦人的 div...

有什么想法吗?

编辑

我无法编辑 html 和 css,我只能在单独的“小部件”中插入任何 html/javascript/css 代码。这是出于测试目的,我有管理员权限可以尝试...

我当前的代码如下

<script type="text/javascript">
window.onload = function(){
document.getElementById('ad').getElementsByTagName('div')[0].outerHTML='';
document.getElementById('ad2').outerHTML='';
document.getElementById('footer').outerHTML='';
document.getElementById('ad3').getElementsByTagName('a')[1].outerHTML='';
};
</script>

【问题讨论】:

  • 您确定可以这样做吗?
  • 我会仔细检查。并三重检查。然后再次检查以确保您被允许这样做:P
  • 三重检查没问题

标签: javascript conflict ads adsense banner


【解决方案1】:

任何导致错误的代码几乎肯定会干扰 phpBB 以及广告所需的内容。通常,广告代码是独立编写的,因此不需要任何外部帮助(例如文档&lt;head&gt; 中的脚本)。

也许您可以使用 CSS 定位它们的父元素并应用 display:none 或其他什么?这可能是一个更好的解决方案。

【讨论】:

  • 我不确定如何在我的情况下应用 display:none,因为从我的代码中可以看出,我并不总是有 div id。在这种情况下,就像您有一个完全加载的网页,而您只能添加一些 html/css/javasctipt(或其他所有内容)。
  • 您能否链接到您的网站(显示广告),以便我们尝试定位?
  • www.dreamincode.net(这个或任何其他 google adsense 网站都是一个很好的例子)
  • 我在那里看不到任何广告 :P 也许你可以用detecting node insertion 做点什么
  • 啊,Chrome 会在我的工作计算机上自动阻止它们,呵呵(未安装 AdBlock)。您应该可以使用$('script[src*=doubleclick|mediaplex]').parent().remove();(或.hide())从页面中删除/隐藏它们
【解决方案2】:

首先,您应该确保您被允许删除这些广告,未经许可这样做可能会给您带来麻烦。

假设此时您可以:

抛出错误很可能会使您自己的脚本崩溃,这往往是一个糟糕的主意。

你可以:

  • 尝试查找带有 URL 的脚本标记并将其删除
  • 制定 css 规则以在 div 显示之前将其隐藏,然后删除广告生成的所有代码。
  • 重新编写您的 javascript,使其不会与其他脚本冲突。

【讨论】:

    猜你喜欢
    • 2010-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-27
    • 2015-09-25
    • 2016-05-13
    • 2017-08-15
    相关资源
    最近更新 更多