一部の要素にクラスを動的に追加しています。そして、追加されたクラスが存在するクリックされた要素の innerHTML を取得する必要があります。クラスを参照してinnerhtmlを取得する方法を知っている人はいますか?
jQuery のような Javascript ライブラリを使用したくないことに注意してください。
一部の要素にクラスを動的に追加しています。そして、追加されたクラスが存在するクリックされた要素の innerHTML を取得する必要があります。クラスを参照してinnerhtmlを取得する方法を知っている人はいますか?
jQuery のような Javascript ライブラリを使用したくないことに注意してください。
これを試して:
document.body.onclick = function(e) {
var clickedEl = window.event ? event.srcElement : e.target;
while (clickedEl != null) {
if (clickedEl.className
&& (" " + clickedEl.className + " ").indexOf(" yourclass ") != -1) {
// do something, e.g.,
alert("Element with class was clicked");
return;
}
clickedEl = clickedEl.parentNode;
}
}
デモ: http: //jsfiddle.net/3qChA/
これは、クラス「yourclass」の要素がクリックされたとき、または「yourclass」の要素の子孫要素がクリックされたときに、「何か」を実行します(私の例ではアラートを表示します)。もちろん、ハードコードされた「yourclass」を必要に応じて変数に置き換えることができます。