3

私は https Web サイトに取り組んでおり、私のサイトとはまったく関係のない (http 要素を要求する) プラグインがセキュリティ上の問題を引き起こしていました。

(Windows) [インターネット オプション] -> [セキュリティ] -> [混合モード] を無効にしました (https サイトから http リソースを取得できないようにするため)。

この制限を適用すると、IE9 は、https サイトにいるときは常に http 要素を要求するプラグインによって実行されるスクリプトを中止します (この場合、問題のプラグインはhttp://www.freemake.com/ビデオ ダウンローダーです)。コンソール出力: SEC7111: http://download.freemake.com/images/arrow.png -link to my https site- SCRIPT16388: Operation aborted This abort occur after /end-of $(document).ready (...)。

しかし、次に起こることは私にいくつかの頭痛の種を引き起こしています... SCRIPT438: オブジェクトはプロパティまたはメソッド 'cookie' をサポートしていません これは $.cookie 関数を参照しています (他の多くの jQuery 関数でも発生します)。

jQuery のさまざまな機能が無効化または削除されているようです。上記の中止操作の前に、いくつかのコンソール ログを実行します。 LOG: jQuery.cookie >>> true LOG: $.cookie >>> true LOG: jQuery >>> true LOG: $ >>> true

ご覧のとおり、それらは存在します。中止操作の後、ログを再度呼び出します。

ログ: jQuery.cookie >>> false ログ: $.cookie >>> false ログ: jQuery >>> true ログ: $ >>> true

プラグイン スクリプトの中止操作はサイトにどのような影響を与える可能性がありますか? このサイトは、独自の jQuery ライブラリをホストしています。

4

1 に答える 1

1

グローバルスコープの使用から削除するために、同じグローバル変数「$」を共有している可能性があります

jQuery.noConflict();

次に、このように新しい変数に割り当てます

$j = jQuery;

于 2013-09-30T13:16:12.650 に答える