1

一部の要素にクラスを動的に追加しています。そして、追加されたクラスが存在するクリックされた要素の innerHTML を取得する必要があります。クラスを参照してinnerhtmlを取得する方法を知っている人はいますか?

jQuery のような Javascript ライブラリを使用したくないことに注意してください。

4

1 に答える 1

3

これを試して:

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」を必要に応じて変数に置き換えることができます。

于 2012-07-15T05:15:11.060 に答える