Heim > Web-Frontend > js-Tutorial > Zusammenfassung der gängigen Methoden zur Verwendung von Raw-JS-Selektoren_Javascript-Kenntnissen

Zusammenfassung der gängigen Methoden zur Verwendung von Raw-JS-Selektoren_Javascript-Kenntnissen

WBOY
Freigeben: 2016-05-16 16:52:58
Original
1191 Leute haben es durchsucht

Gemeinsame getElementById, getElementsByName, getElementsByTagName. Aber Ausländer waren mit diesen APIs nicht zufrieden, also entwickelten sie nach und nach jQuery-Selektoren. Hier sprechen wir nur über die ursprüngliche js-Auswahl.

1.getElementById

Dies ist der am häufigsten verwendete Selektor, lokalisiert nach ID:

Beispiel:

var test=document.getElementById(" test ").value;//Erhalten Sie den Wert des Elements mit der Test-ID im Dokument und weisen Sie ihn der Testgesichtsänderung zu

2.getElementsByName

Beispiel:

var test= document.getElementByName("test");//Rufen Sie den Knoten des Elements mit dem Namen test im Dokument ab und weisen Sie ihn der Testvariablen zu. Zu diesem Zeitpunkt ist die Testvariable ein Array

3. getElementsByTagName

Beispiel:

var test=document.getElementsByTagName("test");//Den Knoten des Elements mit der Klasse test im Dokument abrufen und zu diesem Zeitpunkt dem Test zuweisen , die Testvariable ist ein Array und dieser Selektor kann in IE5, 6, 7, 8 nicht verwendet werden

4.getElementsByClassName

Dieser Selektor kann nicht in der js-API gefunden werden Wenn Sie es verwenden möchten, müssen Sie die Methode selbst definieren. Verwenden Sie zunächst getElementsByTagName("*"), um alle Elemente im Dokument abzurufen, und verwenden Sie dann reguläre Ausdrücke, um passende Elemente zu finden, und fügen Sie sie in ein Array ein gib sie zurück. Es gibt viele Programmierer im Internet, die diesen Selektor implementiert haben:

(1) Das von Robert Nyman verfasste Ultimate getElementsByClassName-Schema wurde 2005 implementiert. Es ist ersichtlich, dass viele Dinge von Ausländer wurden schon vor langer Zeit umgesetzt. Sehr weit weg.

Code kopieren Der Code lautet wie folgt:

// Drei Parameter sind erforderlich, finden Sie einen Es gibt 5007 Elemente mit dem Klassennamen „Zelle“ auf der Webseite. IE8 dauert 1828 bis 1844 Millisekunden,
//IE6 beträgt 4610 bis 6109 Millisekunden, FF3.5 beträgt 46 bis 48 Millisekunden und Opera10 beträgt 31 bis 32 Millisekunden , und Chrome beträgt 23–26 Millisekunden,
//safari4 beträgt 19–20 Millisekunden
function getElementsByClassName(oElm, strTagName, strClassName){
var arrElements = (strTagName == "*" && oElm.all )? oElm. all :
oElm.getElementsByTagName); var oRegExp = new RegExp("(^|\s)" strClassName "(\s|$)");
var oElement; {
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
return (arrReturnElements )
}


(2) bereitgestellt von Dustin Diaz (Autor von „JavaScript Design Patterns“), aber die Kompatibilität ist nicht so gut wie oben und unterstützt IE5 nicht.



Code kopieren
Der Code lautet wie folgt: //Die letzten beiden Parameter sind zuverlässig, Eine Webseite finden Es gibt 5007 Elemente mit dem Klassennamen „Zelle“. IE8 dauert 78 Millisekunden, IE6 dauert 125 ~ 171 Millisekunden // FF3.5 ist 42 ~ 48 Millisekunden, Opera10 ist 31 Millisekunden, Chrome ist 22 ~ 25 Millisekunden, Safari4 ist 18 ~ 19 Millisekunden var getElementsByClass = function(searchClass,node,tag) {
var classElements = new Array();
if ( node == null )
node = document;
if ( tag == null )
tag = '*'; new RegExp(" (^|\s)" searchClass "(\s|$)");
for (i = 0, j = 0; i < elsLen; i ) {
if ( Muster. test(els[i].className) ) {
classElements[j] = els[i];
j ;
}
return classElements;

----------------------------- ---- ---------------------------------------------- ---- ---------------------------------------------- ---- ----

Hinweis: Dies kann den Knoten des aktuellen Elements darstellen.

---------------- ------ -------------------------------------------- ------ -------------------------------------------- ------ --------

Im Folgenden sind einige häufig verwendete Methoden aufgeführt, um Wissenspunkte wie Ereignisse abzugleichen:



Code kopieren


Der Code lautet wie folgt:

//Senden Sie das Formular mit dem ID-Test

document.getElementById("test").submit();

//Legen Sie den Rand des Elements mit dem ID-Test fest bis 2 Pixel, durchgehend, rot

document.getElementById("test").style.border="2px durchgehend rot"

//Die Maus bewegt sich mit aus dem Element heraus ID-Test, Hintergrundfarbe ändern

function test(){
document.getElementById("test").onmouseover=function(){document.getElementById("test2").style.backgroundColor=" red"} ;
document.getElementById("test").onmouseout=function(){document.getElementById("test2").style.backgroundColor="blue"};
}

//Popup Die Anzahl der Elemente mit dem Namen test im Dokument

function test()
 {
 var test=document.getElementsByName("test");
 alert(test .length);
 }
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage