私はjQueryがロードされたことを知っています、なぜなら私は 'jQuery'のために$
を切り替えることができ、すべてが期待通りに振る舞うが、これを修正できなければ面倒なスクリプトになるでしょう。
このスクリプト:
jQuery(document).ready(function(){
$("ul.vimeo_desc_feed li a").click(function(){
alert($(this).attr('href'));
return false;
})
});
エラーを生成します$ is not a function
このスクリプト:
jQuery(document).ready(function(){
jQuery("ul.vimeo_desc_feed li a").click(function(){
alert(jQuery(this).attr('href'));
return false;
})
});
正常に動作します。
Javascriptを自己起動関数の内側にラップしてから、ローカル変数名として$
を使用してjQuery
を引数として渡すことができます。例えば:
(function($) {
$(document).ready(function(){
$("ul.vimeo_desc_feed li a").click(function(){
alert($(this).attr('href'));
return false;
})
});
}(jQuery));
意図したとおりに動作するはずです。
WPが提供するバージョンのjQuery(wp_enqueue_script('jquery')
を使用すると取得できるもの)を正しく覚えていると、jQueryはすぐに競合しなくなり、$
が未定義になります。
あなたはもうすぐそこにいます!
jQuery(document).ready(function($){
$("ul.vimeo_desc_feed li a").click(function(){
alert($(this).attr('href'));
return false;
})
});
あなたはあなたのメソッドに$
関数としてjQueryへの参照を渡さなければなりません。上記のように最初のfunction()
呼び出しの中に$を入れるだけでも、問題はありません。
JQueryに関数を渡すことは$(document).ready(...)
の省略形です。そして、コールバックの最初のパラメータとして$
を置くことによって、あなたはそのコールバックの中にjQueryのためのエイリアスを作成します:
jQuery(function($) {
$("ul.vimeo_desc_feed li a").click(function(){
alert($(this).attr('href'));
return false;
});
});
あなたはこれのためのドキュメンテーションを見ることができます ここ 。