エラーの出るWordPressを修正したお話
WordPressに限らずよく目にするエラー。
jQuery is not defined
jQueryが定義されていません
原因は様々でテーマやプラグインが絡むと頭が痛くなるエラーでございます。
jQuery is not defined
要はjQueryのコアファイルが読み込まれていないのにスクリプトを動かそうとするとエラーになってしまうっていう。
<script> $(function(){ ... ... ... }); </script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js?ver=1.12.4"></script>
スクリプトより先に読み込めば普通は解決する。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js?ver=1.12.4"></script> <script> $(function(){ ... ... ... }); </script>
先に読み込んでいるのにエラーが出る場合がありました。
<script defer src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js?ver=1.12.4"></script> <script> $(function(){ ... ... ... }); </script>
defer属性
defer属性 ≪ script要素 ≪ スクリプト記述 ≪ 要素 ≪ HTML5入門
HTML5のscript要素のdefer属性の解説。
defer 属性はブラウザにスクリプトを待たないよう指示します。
代わりに、ブラウザは HTML の処理を継続し、DOM を構築します。
スクリプトは “バックグラウンド” でロードされ、DOM が完全に構築されたときに実行されます。
この属性がついているとスクリプトより後に読み込まれるため「jQuery is not defined」エラーが発生します。
使う場面が限られてくると思いますが一括で属性指定してたのでハマってしまいました。
コメント