1

Jqueryを使用して別のphpファイルをロードしていますが、そのphpファイルにはjqueryライブラリもリンクされています(googleのCDN)。Windowsではjqueryが機能しなくなり、macではgoogleのWebフォントが読み込まれず、jqueryが読み込まれないため、これにより競合が発生すると思います。それらのページからjqueryを削除するだけで、問題を修正しました。これを行うためのより良い方法はありますか?

4

4 に答える 4

2

他のページ全体(独自のライブラリとリンクされたリソースを含む)をロードする場合は、jQuery / ajaxを使用してロードしてインラインでレンダリングするよりも、iframeにロードする方がよい場合があります。

于 2012-11-28T20:43:33.603 に答える
1

Jquery AJAXを使用する場合は、受信したコンテキストで別のJqueryをロードするためにリンクされているタグを探し、それらを削除するだけです。

私の意見では、js部分が一方の場所にあり、php部分がもう一方の場所にあるように、プロジェクトのモジュールを作成する必要があります。

于 2012-11-28T20:40:58.483 に答える
1
<script type="text/javascript" src="<?= COMMONSITE_HTTP_PATH ?>/scripts/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
/* <![CDATA[ */
if (typeof jQuery == 'undefined') {
    var script = document.createElement('script');
    script.type = "text/javascript";
    script.src = "//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js";
    document.getElementsByTagName('head')[0].appendChild(script);
    }
/* ]]> */
</script>

2番目のWebドキュメントでjQueryライブラリをテストできれば、2回挿入されることはありません。

于 2012-11-28T20:46:10.207 に答える
0

jQuery.noConflictお友達のようですね。

http://api.jquery.com/jQuery.noConflict/

于 2012-11-28T20:41:05.580 に答える