English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

简要讨论jQuery中的eq()与DOM中element.[]的区别

wie folgt:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8>
  <title>Title</title>
</head>
<body>
  <a class="a">#1</a>
  <a class="a">#2</a>
  <a class="a">#3</a>
  <script src="js/jq.js"></script>
  <script>
    var a = $('.a') ;
    var b = $('.a').eq(1) ;
    var c = $('.a')[1);
    var d = $('.a').eq(1)[0];
    var f = $('.a')[0].eq(1);
  </script>
</body>
</html>

$('.a')  // Der wurde ausgewählt3a, sind jq-Objekte (können jq-Attribute und Methoden verwenden)

$('.a').eq(1) // Der zweite a wurde ausgewählt und ist ein jq-Objekt (können jq-Attribute und Methoden verwenden, können DOM-Attribute und Methoden nicht verwenden)

$('.a')[1]  // Der zweite a wurde ausgewählt und ist ein DOM-Objekt (können DOM-Attribute und Methoden verwenden, können jq-Attribute und Methoden nicht verwenden)

$('.a').eq(1)[0]  // Der zweite a wurde ausgewählt und in alle DOM-Objekte umgewandelt (können DOM-Attribute und Methoden verwenden, können jq-Attribute und Methoden nicht verwenden)

-----Daraus ergibt sich, dass jQuery das JS noch einmal verpackt, jq-Attribute können die Verpackung öffnen und auf DOM-Attribute zugreifen, während DOM die jq-Attribute nicht aufrufen kann.

$('.a')[0].eq(1) // Fehler, da das DOM-Objekt jq-Methode nicht verwenden kann, eq() ist jq-Methode.

Das ist alles, was der Autor Ihnen in diesem kurzen Überblick über die Unterschiede zwischen eq() in jQuery und element.[] im DOM gebracht hat. Ich hoffe, dass Sie unsere Anleitung unterstützen und unterstützen!