Javascript - a lua span de clasă?

Duplicat posibil:
   Cum să obțineți elementul de clasă în JavaScript?

Trebuie să obțin textul din interiorul unui interval. Spanul nu are identitate. Are doar o clasă. Nu ar exista decât o singură perioadă cu această clasă. Știe cineva cum pot obține acest element de span în javascript? Mulțumiri!

1

Acest lucru este ușor diferit de Cum puteți obține elementul de clasă în JavaScript? care solicită genericul "a obține un element cu o clasă", în cazul în care există o modalitate mai ușoară de deschidere, plus această întrebare se referă la înlocuirea textului, în timp ce vreau să obținem innerHTML în acest caz.

0
@Niko, Această întrebare nu este etichetă jQuery, OP cere o soluție javascript.
adăugat autor Gabe, sursa
@Niko, există etichete pentru un motiv. Nu am spus niciodată că jQuery nu a fost javascript. Voi spune ce este corect și este pur și simplu OP a cerut o soluție de JavaScript pură. De asemenea, faceți o presupunere că PO poate chiar să utilizeze jQuery în soluția lor, ceea ce este greșit.
adăugat autor Gabe, sursa
Check out jQuery la jquery.com - cu ea, este la fel de simplu ca $ ('span.galleria -current ')
adăugat autor Niko, sursa
@Jivings Este puțin necesar pentru această sarcină, da - dar probabil util în viitor.
adăugat autor Niko, sursa
@Gabe Și jQuery este ce? Corect, JavaScript. Nu a spus: Te rog, nu-mi spune nimic despre o bibliotecă atât de frumoasă ca jQuery.
adăugat autor Niko, sursa
@Gabe Deoarece eticheta spune "javascript", OP ar putea fi probabil interesat de ceva de genul jQuery - aceasta este singura presupunere pe care am făcut-o. De aceea nu am postat acest răspuns ca răspuns, este doar o notă care spune "poate doriți să verificați acest lucru". Nici o idee care este problema cu asta.
adăugat autor Niko, sursa
@Niko Pentru o linie? Foarte necesar.
adăugat autor Jivings, sursa

2 răspunsuri

Da, puteți utiliza document.getElementsByClassName() .

Aceasta va returna o matrice a tuturor elementelor cu numele de clasă. Deci, primul ar putea fi accesat astfel:

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

0
adăugat
Aceasta nu este o soluție de browser încrucișată.
adăugat autor Gabe, sursa
Cu excepția faptului că IE8 nu acceptă getElementsByClassName.
adăugat autor j08691, sursa
Singura problemă cu acest lucru (și am fost de gând să sugerez același lucru) este că este susținută de fiecare browser major pe pământ (bun), cu excepția IE8 și în jos (rău). Vedeți whencaniuse . +1 oricum.
adăugat autor Surreal Dreams, sursa
IE 9 suportă această funcție.
adăugat autor Surreal Dreams, sursa
Acest lucru va funcționa în Chrome/Firefox, dar IE nu acceptă getElementsByClassName.
adăugat autor sachleen, sursa
Comentariile sunt corecte. Această soluție nu este validă pentru implementările mai vechi ale browserului.
adăugat autor Jivings, sursa
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);
}

Și un exemplu care vă va da pe toți:

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;
}
0
adăugat
Îmi place acest lucru, deoarece nu puteți obține accidental unele "non span" care se întâmplă să aibă clasa pe care o căutați ...
adăugat autor rogerdpack, sursa
JavaScript, România - Moldova
JavaScript, România - Moldova
328 participanți

Comunitatea Română JavaScript: github.com/js-ro Pentru confort, opriți notificările. Parteneri: @node_ro, @php_ro, @python_ro, @seo_ro, @RomaniaGroup, @ai_ro, @Grupuri_IT Offtop: @holywars_ro Joburi: @js_jobs_ro Sponsored with ❤️ by ciupacabra.com