0

ウェブサイトにライトボックスをインストールした後、コメントが機能しなくなりました。私はコードを見て、<head>(ライトボックスに付属していたもの) にあった JavaScript リンクを、Wordpress-Buddypress に付属していた JavaScript リンクの上に移動しました。Lightbox からの JavaScript リンクが、Wordpress に付属の JavaScript リンクの下にある前に。

切り替えた後、コメントは私のウェブサイトで再び機能するようになりましたが、ライトボックスが機能しなくなりました。

エラーを見つけるために Firebug を使用すると、このエラーが発生します。

$("#videogallery a[rel]").overlay is not a function

そのコードは、ライトボックスに付属のファイルである「videolightbox.js」からのものです。

私はこの問題について多くの調査を行いましたが、使用する必要があるかもしれないと考えていますjQuery.noConflict();が、使用方法がわかりませんか? このリンクを見ていました

しかし、使い方がわからないため、機能させることができないようです。$()また、すべてをに置き換えてみましjQuery()たが、問題は解決しませんでした。

4

4 に答える 4

1

しかし、私はそれを使用する方法がわかりませんか?

var $j = jQuery.noConflict();

コードは $(selector) から $j(selector) に変更されます

多くの例がここにあります http://api.jquery.com/jQuery.noConflict/

于 2012-01-23T23:25:43.537 に答える
0

注意深く考慮すべきことの1つは、スクリプトの読み込み順序と、JQueryの繰り返し読み込みに注意することです。いくつかの(できればまれな)状況では、JQueryをロードし、それを使用するコードをセットアップしてから、JQueryをリロードして、最初にロードした後にセットアップされたイベントを破棄することができます。

一度そのような状況に遭遇したことは知っていますが、それが起こった原因となった詳細を思い出せません。

于 2012-01-23T23:19:14.763 に答える
0

あなたの答えに

$=jQuery.noConflict();

$('#id').css(...); を使用できるようになりました。

于 2012-01-23T23:27:28.107 に答える
0

このエラーにより、残りのコードが実行されない可能性があります。関数ではなく、関数ではなく、正常に動作.overlayしていることを意味します。.overlay$

var test; test("#videogallery a[rel]").test()
//TypeError: test is not a function <-- You would see this if $ wasn't working

var test = function(){return {};};
test("#videogallery a[rel]").test();
//TypeError: test("#videogallery a[rel]").test is not a function <-- You see this because .overlay isn't working

.overlayこれは単に、存在する前に呼び出そうとしていることを意味します。

于 2012-01-23T23:35:06.460 に答える