3

重複の可能性:
JavaScriptでクラスごとに要素を取得する方法は?

スパンの内側からテキストを取得する必要があります。スパンにはIDがありません。クラスしかありません。このクラスにはスパンが1つだけあります。JavaScriptでこのspan要素を取得する方法を知っている人はいますか?ありがとう!

<span class="galleria-current">1</span>

これは、JavaScriptでクラスごとに要素を取得する方法とは少し異なりますか?これは、スパンのより簡単な方法がある場合に備えて、より一般的な「クラスで要素を取得する」ことを求めています。さらに、その質問はテキストの置き換えに関するものですが、この場合はinnerHTMLを取得したいと思います。

4

2 に答える 2

14

はい、ご利用いただけますdocument.getElementsByClassName()

これは、そのクラス名を持つすべての要素の配列を返します。したがって、最初のものは次のようにアクセスできます。

var span = document.getElementsByClassName("galleria-current")[0]

于 2012-06-04T18:50:22.087 に答える
4
function getFirstSpanWithClass(cssClass) {
    var elements = document.getElementsByTagName('span');
    for (var i = 0; i < elements.length; i++) {
        if((' ' + elements[i].className + ' ').indexOf(' ' + cssClass + ' ') > -1) {
            return elements[i];
        }
    }
}

var span = getFirstSpanWithClass('galleria-current'); // should return your span element.
if (span){
    // in case there is a span on the page, write its innerHTML to console
    console.log(span.innerHTML);
}

そして、それらすべてを提供する例:

function getSpansWithClass(cssClass) {
    var elements = document.getElementsByTagName('span');
    var out = [];
    for (var i = 0; i < elements.length; i++) {
        if((' ' + elements[i].className + ' ').indexOf(' ' + cssClass + ' ') > -1) {
            out.push(elements[i]);
        }
    }
    return out;
}
于 2012-06-04T18:51:50.340 に答える