次の行をHTMLファイルに手動で書き込むと、次のようになります。
<div>
<input type="button" value="Button 1">
<input type="button" value="Button 2">
</div>
新しい行ごとにテキストノードが作成されます。
addEventListenerメソッドのuseCapture引数を理解したかったのです。div要素のchildNodesプロパティを使用してDOM要素にアクセスすることを選択しましたが、要素間のtextNodesを無視する必要があります。これは実際には実用的ではありません。
document.getElementsByTagName("div")[0].addEventListener("click", function(){alert(1);}, true);
document.getElementsByTagName("div")[0].childNodes[1].addEventListener("click", function(){alert(2);}, false);
document.getElementsByTagName("div")[0].childNodes[3].addEventListener("click", function(){alert(3);}, false);
ここでは、2つの入力タグを無視childNodes[0]
して選択する必要があることがわかります。childNodes[2]
すべてのHTMLコードを1行だけで記述せず、Javascriptを使用せずに、textNodesの作成をバイパスする方法はありcreateElement
ますか?
新しい行に移動するときにtextNodesを作成せずにHTMLコードを書くことは可能ですか?