WP4.5でjQueryがエラー: Syntax error, unrecognized expression

wordpress-logo-notext-rgbWWordPress 4.5がリリースされたので検証のため、ステージングサイトを試しにWP4.4からWP4.5にアップデートしてみたら、jQueryで動かしているスライドショーが動作しない (TT

コンソールで確認するとjQuery本体から下記のエラーがでていて、以降のJavascriptが停止していた。

Syntax error, unrecognized expression

jQuery本体のバグ?と思いきや、どうやら、WordPressバージョンアップによりjQuery Migrateのバージョンの上がったことが原因でセレクタの記述でエラーがでていたようです。

WordPress4.4 WordPress4.5
 jQuery 1.11.3
(jQuery Migrate 1.2.1)
 jQuery 1.12.3
(jQuery Migrate 1.4.0)

筆者の場合、下記のようなセレクタの書き方が問題だったみたいです。

$('a[href^=#]').on( 'click', function() {} );

attributeの値を引用符で囲めば良いようで、下記の書き方にしたら直りました。

$('a[href^="#"]').on( 'click', function() {} );

今回に始まったことではないですが、WordPressのバージョンアップの際には、事前に検証した方が良いですね。


参考にさせていただいた記事

  1. jQueryエラー:Syntax error, unrecognized expression