他の答えはそう、これに触れていない。
document.getElemenbyId("someId").onclick = function(){..some code..};
...私のためにミス:
あなたの例でも、JavaScriptコード内(反映)onclick
属性を使用しています属性を使用せずにこれを行う主な理由の1つ:他人とうまく遊ぶ。ハンドラ取り付けるDOM2道(IE上addEventListener
、またはattachEvent
は[IE9は最終的に標準addEventListener
を持っている]):
document.getElementById("someId").addEventListener("click", function() { ... }, false);
// or
document.getElementById("someId").attachEvent("onclick", function() { ... });
... 1件のハンドラがで結合することができるよりも非排他的 —以上であります同時。一方、onclick
に割り当てると、前のハンドラを起動して引き継ぎます。
私にとっては、この「うまくやっている」ことは大きな売りです。さて、コードとマークアップを別々にしておきますが、これは他の回答でもよくカバーされています。
_ _初心者のWeb開発者と経験豊富な専門家を分ける部分です。_ _ –
SLaks
@SLaksさらに、アーキテクチャの観点からは、ビヘイビアー(JavaScript)とプレゼンテーション(HTML/CSS)を分離するのが理にかなっています。私はこれが「目立たないJavaScript」の定義の一部であることは承知していますが、言及することが重要です。 –
@Andrew:私はすでにそれを言っていませんでしたか? – SLaks