0

Web サイトにウィジェットを追加する JavaScript コードをお客様に提供します。</body>現在、タグのすぐ上にこれを貼り付けるように依頼しています。

<script type="text/javascript">
var myHost = (("https:" == document.location.protocol) ? "https://" : "http://");
document.write(unescape("%3Cscript src='" + myHost + "www.mywebsite.com/mycode.js.php?u="+encodeURIComponent(window.location.host)+"' type='text/javascript'%3E%3C/script%3E"));
</script>

ご覧のとおり、コードはページの URL に応じて http または https の URL でスクリプトを呼び出します。

Web サイトの HTML が適切に形成されていない場合、スクリプトによってIE ブラウザで「操作が中止されました」というバグが発生することがあります。

<head>エリアに添付されるコードを顧客に送信したい。

  1. head 部分からコードを呼び出すときに http/https を処理するにはどうすればよいですか?
  2. 操作が中止された問題を解決するかどうか知っていますか?
4

2 に答える 2

2

HTTPSソリューションを提供するだけです。

彼らのページが安全であれば、それはうまくいくでしょう。そうでない場合は、安全でないページに安全なオブジェクトを埋め込むことに問題はありません。

<script type="text/javascript" src="https://www.mywebsite.com/mycode.js.php"></script>

クエリ文字列で元のドメインを渡していることがわかります。GETパラメータを介して渡す必要なしに、JSコードからそれをフェッチできます。プロパティを使用して確認できdocument.referrerます。

于 2009-05-14T14:58:17.150 に答える
2

Google は分析コードをまったく同じ方法で処理しているようです (ご存じのとおりです)。コードで何をしていますか? あなたが提供した「操作が中止されました」リンクを見ると、ページが読み込まれたときにコードを実行するソリューションとして表示されます。

関数を onload イベントにバインドし、そこで DOM 操作コードを実行することをお勧めします。

于 2009-05-14T15:00:48.720 に答える