Javascript AdBlock阻塞MathJax和AddThis

Javascript AdBlock阻塞MathJax和AddThis,javascript,mathjax,addthis,adblock,Javascript,Mathjax,Addthis,Adblock,启用AdBlock时,我出现以下错误: AddThis:Uncaught Error:必须传递一个字符串,该字符串将求值到 存储回调的全局可访问对象 MathJax:Uncaught EvalError:拒绝将字符串求值为 JavaScript,因为“不安全评估”不是允许的脚本源 在以下内容安全策略指令中:“script src “self”*“unsafe inline”。 禁用AdBlock时,一切正常 这个问题几周前就出现了 即使启用了AdBlock,在使用MathJax:和 可能,有些东

启用AdBlock时,我出现以下错误:

  • AddThis:
    Uncaught Error:必须传递一个字符串,该字符串将求值到
    存储回调的全局可访问对象

  • MathJax:
    Uncaught EvalError:拒绝将字符串求值为
    JavaScript,因为“不安全评估”不是允许的脚本源
    在以下内容安全策略指令中:“script src
    “self”*“unsafe inline”。

  • 禁用AdBlock时,一切正常

    这个问题几周前就出现了

    即使启用了AdBlock,在使用MathJax:和

    可能,有些东西已经改变了,我需要正确地修改代码。怎么做


    提前感谢。

    两个错误都涉及相同的内容安全策略(CSP)问题,即不允许不安全的
    eval()
    调用。AdBlock和AdBlock Plus等广告拦截器最近开始在传统技术不足的情况下使用CSP(请参阅)

    我只能在emathhelp.net上复制它。在那里,我能够找到过滤器
    | emathhelp.net^$csp=script src'self'*'safe inline'
    ,该过滤器被添加到EasyList ad阻止列表中。在Adblock Plus中,您可以通过以下步骤找到此类过滤器:

  • 右键单击页面上的任意位置
  • 在关联菜单中选择“检查”
  • 在打开的窗口中切换到“Adblock Plus”选项卡
  • 重新加载页面以填充选项卡中的列表
  • 在类型为“CSP”的请求旁边查找筛选器

  • 您可以访问EasyList(,),了解他们添加特定筛选器的原因。他们还应该能够帮助您恢复任何已损坏的功能。

    这里没有足够的信息来帮助您。这看起来像是CSP的问题,但不清楚你在哪个网站上看到了这个问题。我看到当广告拦截器出现时,页面上有很多错误(例如,jquery也无法加载),所以我怀疑页面上的其他JS之间存在一些不好的交互。例如,如果我在页面加载后(打开广告拦截器)将MathJax的新副本注入DOM,MathJax工作正常,因此MathJax本身可能没有问题。