web関連
「Uncaught TypeError: $ is not a function」というエラーについて
jsの記述は特定のjsファイルにまとめていたけど、特定のページでのみ使用したかったので「is_page()」で条件分岐してfooter.phpに直接jqueryを記述したときにやらかした備忘録です。
Uncaught TypeError: $ is not a functionとは
日本語にすると「$
っていう関数なんて定義されてないからエラーだよ」という言う事みたいです。
以下は今回起きた失敗例。
//失敗例
$(function(){
//jQueryコードが入ります。
});
上記のように$
を定義しないで使用するとエラーが起きます。
だから以下のように定義をすれば直ります。
//成功例
jQuery(function($){
//jQueryコードが入ります。
});
まとめ
「Uncaught TypeError: $ is not a function」の対応方法として、ずっと「jquery」を読み込めばなおるもんだと思い、「CDN」で読み込んだらlightbox系のプラグインがエラーになった…
どうやらjQueryを読み込んでいたとしてもwordpress側でコンフリクトしないように$
を未定義とするみたい。
だから$
を定義しないと使えない。
jQuery(document).ready(function($){
ってちゃんと書いてあるじゃん…