このコードを見てください: http://jsfiddle.net/Bkdgr/1/
動作しません。
ただし、次の 2 つの変更のいずれかを行うと、正しく機能しnewItemます。append$()
$('button').on('click', function(e){
e.preventDefault();
var newItem = '\
<li>Hello, \
World!</li>';
$('ul').append(newItem);
});
開始<li>タグを文字列定義の最初の行に移動します。
$('button').on('click', function(e){
e.preventDefault();
var newItem = '<li>Hello, \
World!</li>';
$('ul').append($(newItem));
});
<li>先頭と同じ行
に移動しても機能しません\(ただし、削除せずに\)。
私には、コンストラクターが文字列定義$()の先頭に問題があるようです。\純粋な文字列 ($()ラッパーなし) を渡しappendても問題はないようです。
なぜこのように機能するのですか?先頭のスラッシュには特別な意味があり$()ますか?