1

Dokuwiki ではプロトタイプを作成しており、私のサイトでは Jquery を使用しています。

jQuery.noConflict() を使用する代わりに Dokuwiki JavaScript を変更する別の方法がある場合、または jQuery で var $j = jQuery を使用しますか?

私は Dokuwiki のすべての .js ファイルを開き、「$(」を検索して「$DW(」に置き換えます。これは魅力のように機能しますが、JavaScript を含むすべての Dokuwiki プラグインを処理する必要がありました。

では、プロトタイプ ライブラリ/Dokuwiki で "$" を変更するにはどうすればよいでしょうか?

4

2 に答える 2

1

あなたはそれを間違った方法でやっています。プロトタイプの後に jQuery を含めるだけで、すぐに を呼び出しますjQuery.noConflict()。そして、あなたのコードでは常に書いてください

jQuery(..)/jQuery.[functionname](...)通常の$表記の代わりに。

このようにして、dokuwiki の既存の JavaScript ソース全体と既存のすべてのプラグインをそのままにしておくことができます。また、コードで jQuery を使用できます。

または、jQuery を記述する代わりに短いハンドルが必要な場合は、jQuery のエイリアスを作成できます。

<script ... include prototype ..</script>
<script ... include jquery ..</script>
<script ...>
    var jQ = jQuery.noConflict();
    //do something with prototype
    $("findme");
    jQ("div hideme").hide();
</script>

詳細については、jQuery.noConflict()を確認してください

于 2010-03-09T08:33:45.400 に答える