【jQuery】セレクタにHTMLタグを渡すと、その要素を内部で生成してくれる。

という自分的大発見!

こいつはいったい何を言っているんだ?と言わずにまぁ落ち着いて。

例えば。

$(function(){
	var elem = $('<div>');
	$('body').append(elem);
})

2行目でやってることが、タイトルで言ったまんまの操作。jQueryのセレクタ指定部分にタグを渡している。
すると変数elemには内部的に「<div></div>」を保持していることと同等になる。
なので3行目でbodyに対してappend()を行うと、そのままbodyタグ内に上記のdiv要素がそのまま挿入されることになるのである。これは近年まれに見る世紀の大発見。

しかも第2引数にオブジェクトを渡すことでアトリビュートの設定も出来てしまうという神仕様。

$(function(){
	var elem = $('<div>', {'id':'hoge', 'class':'piyo', 'data-foo':'fuga'});
	$('body').append(elem);
})

例えば上記のようにオブジェクトを渡してやった場合、変数elemは内部的に以下のHTMLを生成してくれている。

<div id="hoge" class="piyo" data-foo="fuga"></div>

素晴らし過ぎるjQuery。これはもうやめられない。止まらない。

かっぱえb(ry