【问题标题】:Prevent Specific JS Loaded by iframe from Running on my Site防止 iframe 加载的特定 JS 在我的网站上运行
【发布时间】:2018-06-05 01:18:25
【问题描述】:

我想知道是否可以阻止由 iframe 加载的 JS 在我的 Wordpress 网站上运行。我目前嵌入了由我付费用于我的业务的服务生成的 iframe。 iframe 中嵌入了 Google AdSense 广告。最近,流氓弹出窗口一直在影响我的客户。本质上,这些是在我的网站的移动版本上运行并启动一系列重定向的广告。我可以使用 AdBlocker 在我自己的设备上阻止这些,但并不是我的所有客户都那么精明。

我尝试了以下几种方式来禁用 Google AdSense 广告:CSS display:none; (失败,因为即使元素被 CSS 隐藏,也会加载 JS),PHP(创建了一个利用 wp_dequeue_script 的插件,针对谷歌广告脚本文件(阻止一些 JS,但最终无法阻止广告的每个实例),甚至是我网站头部的 HTML,(这个想法是它阻止在我的域之外加载源,失败)。

有没有办法以编程方式阻止这些 JS 文件加载到我的网站上?

【问题讨论】:

  • 唯一的办法就是一开始就不要嵌入

标签: javascript wordpress iframe adsense


【解决方案1】:

您对此无能为力。正如@charietfl 在评论中所说,如果您有可能,您首先应该考虑不要嵌入它。

从编程的角度来看,您只能做一件可靠的事情:使用 iframe 沙盒模式。 https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe

这样您可以防止 IFRAME 目标运行任何脚本 - 我不知道它是否适合您。否则实际上没有可靠的方法来影响加载的 iframe。

【讨论】:

  • 感谢您的回复。我能够实现我正在寻找的结果,同时保留 iframe 的功能,使用以下内容:sandbox="allow-scripts allow-pointer-lock"。这允许 iframe 的必要脚本在我的网站上运行,但阻止了弹出窗口生成广告脚本。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-09-18
  • 1970-01-01
  • 2011-02-23
  • 2017-11-03
  • 2013-01-22
相关资源
最近更新 更多