私は書くことに慣れています$('<div>')。
しかし、今日、次の構文を使用する john-resig による高度な jquery に関するプレゼンテーションを見ました$('<div/>')。
http://loft.bocoup.com/john-resig-advanced-jquery/
私には、それらは同じ出力を生成するようです。
私の質問は: と の間に違いは
$('<div>')あり$('<div/>')ますか?
私は書くことに慣れています$('<div>')。
しかし、今日、次の構文を使用する john-resig による高度な jquery に関するプレゼンテーションを見ました$('<div/>')。
http://loft.bocoup.com/john-resig-advanced-jquery/
私には、それらは同じ出力を生成するようです。
私の質問は: と の間に違いは
$('<div>')あり$('<div/>')ますか?
いいえ、jQuery はこれらのステートメントをまったく同じものに正規化します。
jQuery thoの以前のバージョンでは、何らかの理由<div>で実際よりも高速でした。<div/>それがまだ当てはまるかどうかはまだわかりません。
http://jsperf.com/jquery-constructor-performance
このバグ/機能はもはや真実ではないようです。
<div>、<div/>、<div></div>、さらには<div/></div>(はい、これは 1 つの要素のみを作成します) すべてがsingleTag通常の再表現をトリガーし、jQuery に を呼び出しますdocument.createElement("div")。html パーサーにはまったく渡されませんでした。
これがあなたが遊ぶことができる正規表現です。それがtrueを返す場合、それはdocument.createElement'd
var rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>|)$/;
<div>は開始タグです。<div/>自己終了タグです。ただし、このコンテキストでは違いはありません。