「jQuery.browser is undefined」エラーの対応方法
2024/02/25
jQueryのプラグインを使っていて1.9以降だと「jQuery.browser is undefined」みたいなエラーがfirebugのコンソールに表示され、挙動がおかしくなった。1.7とか古めのバージョンだと表示されない。
原因
調べてみると$.browserが1.9から廃止になったらしい。また、そもそも1.3からサポート外とのこと。
簡単な解決策としては呼び出すjQueryのバージョンを下げることだけど、それだと他の部分にも影響が出てくると思われるのであまりやりたくなかった。
また、日本語リファレンスでは「jQUery.supportを使ってください」とあるが、プラグインのソースはあまり触りたくなかった。
日本語リファレンス該当ページ
http://semooh.jp/jquery/api/utilities/jQuery.browser/
対応方法
何か簡単な解決方法が無いか調べると、このようなjQueryのバージョンの差異による問題を解決してくれるプラグインがあった。
jquery-migrate
https://github.com/jquery/jquery-migrate
jQueryを呼び出した後に上記プラグインを呼び出すだけで使えた。今までだとバージョンを下げたり、異なるプラグインを検討したりと手間がかかっていたので、今後はこれを使っていく。
関連記事
-
-
formでファイルを選択した際にファイル名やサイズ、形式を調べる方法
フォームで画像などをアップロードする際に「ファイルサイズが大きすぎないか?」「拡 ...
-
-
jQueryで指定した可変(レスポンシブ)要素のposition / width / heightを取得する方法
jQueryで指定した要素のposition(leftやtop) / width ...
-
-
Lightboxで画像拡大時にダウンロードリンクを設置する方法
Lightboxで画像拡大時にダウンロードリンクを設置したいと要望を受けた。もち ...
-
-
jQueryの「DateTimePicker」プラグインで日付や時間選択時に指定したイベントを実行させる方法
jQueryの「DateTimePicker」プラグインで日付や時間選択時、あら ...
-
-
ブラウザのSafariのみスクロール関連のイベントが発火しない場合の対応方法
jQueryで一定距離スクロールさせた場合に発火するイベントをプログラムしていた ...