2020.09.28

jQuery

jQuery Migrateの使い方

デモページはこちら

jQueryはバージョン1.9と3.0で大幅な仕様変更があり、jQuery Migrateはその仕様変更を補助するためのパッチです。jQuery 1系の最新版1.12.4までのパッチがjQuery Migrate 1系、jQuery 1.12.4から3系以降のパッチがjQuery Migrate 3系です。

jQuery Migrateには開発版と製品版があり、開発版はコードの問題をコンソールに表示しますが 製品版は表示しません。開発版は「jquery-migrate-3.3.1.js」のようにMinified化されていませが、製品版はコードが圧縮されて「jquery-migrate-3.3.1.min.js」のようにMinified化されています。そのためjQuery Migrateの開発版と製品版はファイル名で判別できます。

jQueryバージョンアップ時のデバッグには開発版を、コードを修正しきれず復元された機能をやむをえず使う場合は製品版を選択します。

以下のhtmlの構造でテストします。

<ul>
	<li>jQuery Migrate読み込み無し</a></li>
	<li><a href="index2.html">jquery-migrate-3.3.1.js(開発版)</a></li>
	<li><a href="index3.html">jquery-migrate-3.3.1.min.js(製品版)</a></li>
</ul>
<input type="button" value="button01">
<input type="button" value="button02">
<input type="button" value="button03">
<input type="button" value="button04">
<input type="button" value="button05">

jQueryではinput type="button"の要素全てにクラス名check-btnを付与し、CSSでボタンのグラデーションを変更します。ただしinput type="button"要素の存在チェックでjQuery 3系では廃止になったsizeメソッドを使用しています。jQueryはバージョン3.3.1を使用しているため、jQuery Migrateの読み込みがないhtmlではエラーになりjQueryが動作しません。それに対しjQuery Migrateの読み込みがあるhtmlではjQueryが動作します。

$(function() {
	if($("input[type='button']").size()){
		$("input[type='button']").each(function() {
			$(this).addClass('check-btn');
		});
	}
});

関連記事

2021.01.30

jQuery

ヘッダー固定時のページ内リンクスムーススクロール

デモページはこちら ページ内リンクへの移動をスムーススクロールで実装します。ヘッダーは上部に固定しています。以下のhtml構造でテストします。 ページ内リンクの…

2020.09.06

jQuery

jQueryで発生したエラーの対処法

コンソールでjQueryのエラーが発生した場合の対処法です。エラー発生の有無はjQueryのバージョンやfull版・slim版の違いによっても異なります。1系や…

2020.11.08

jQuery

プラグインを利用せずにjQueryで実装する高さ揃え

デモページはこちら jquery.matchHeight.jsのようなプラグインを利用せず、jQueryのみでhtml要素の高さ揃えを実装します。プラグイン利用…

2020.10.15

jQuery

jQueryプラグイン jquery.matchHeight.jsの使い方

jQueryプラグイン、jquery.matchHeight.jsの使い方です。全てのページ共通で、以下のhtml構造でテストします。デモページではクラス名bo…

2020.10.11

jQuery

jQueryのhoverメソッドで要素にマウスカーソルが重なった時と離れた時の処理を実装

デモページはこちら jQueryのhoverメソッドで要素にマウスカーソルが重なった時と離れた時の処理を実装します。hoverメソッドは要素にマウスカーソルが重…

上に戻る