1. ホーム
  2. javascript

[解決済み】 Uncaught Reference Error: stLight is not defined (in Chrome only)

2022-02-05 18:14:09

質問

私のウェブページはこのように終わっています。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">var switchTo5x=false;</script>
<script type="text/javascript" src="http://w.sharethis.com/button/buttons.js"></script>
<script type="text/javascript">
stLight.options({publisher: "ur-24e62f76-1f66-e3aa-1190-c533b729ca11", doNotHash: true, doNotCopy: true, hashAddressBar: false});
</script>
<script type="text/javascript" src="/static/bootstrap/js/bootstrap.js"></script>  
</body>
</html>

FireFoxとSafariでは、動作しています。Chromeでは。

Uncaught ReferenceError: stLight is not defined nectar-tugg-art:229
(anonymous function)

つまり、w.sharethis.com/button/buttons.jsのコードは実行に失敗し、その結果、stLight変数を定義することができなかったのです。

このページは、リモートサーバー上で動作するDjangoのWebアプリケーションの一部です。生成された HTML ページをローカルに保存し、Chrome で表示すると、正しく動作します。

この時点で行き詰ってしまいました。クロスドメインセキュリティモデルと関係があるのでしょうか?セキュリティの例外はないんだけど。

他の javascript ファイルと何か奇妙な相互作用があるのでしょうか?

静的な(生成された)コードは ここで . Dropboxからは実行されませんが。

解決方法は?

OK、見つけたかもしれません:このサイトはChromeの インコグニート (ポルノ)モードです。ということは、何らかの拡張機能が邪魔をしているのではないかと強く思います(Do Not Trackとか)。

EDIT Collusionのquot;block known tracking sites"機能です。