Heim > php教程 > PHP开发 > Eine einfache Möglichkeit, mithilfe von JS/jQuery festzustellen, ob ein DOM-Knoten vorhanden ist

Eine einfache Möglichkeit, mithilfe von JS/jQuery festzustellen, ob ein DOM-Knoten vorhanden ist

高洛峰
Freigeben: 2016-12-05 14:26:28
Original
1427 Leute haben es durchsucht

JS bestimmt nativ, ob ein DOM-Knoten auf der Seite vorhanden ist

Die native JavaScript-Funktion stellt keine Methode zur Verfügung, um zu bestimmen, ob ein DOM-Knoten vorhanden ist. Normalerweise erhalten wir DOM-Knoten über die Methode document.getElement. , das ein Objektarray zurückgibt, können wir über Objekt[0], Objekt[1] auf jedes Objekt dieser Sammlung zugreifen. Da ein Array-Satz zurückgegeben wird, gibt es ein Längenattribut und eine Länge größer oder gleich 1 bedeutet, dass der DOM-Knoten auf der Seite vorhanden ist

Code:

Object.prototype.exist = function(){
 if(typeof this !='undefined' && this.length>=1){
  return true;
 }
  
 return false;
};
Nach dem Login kopieren

Verwendung:

Angenommen, die Seite hat die folgenden Knoten

<div>这里是DIV节点</div>
<div>这里是DIV节点</div>
<span>这里是span节点</span>
Nach dem Login kopieren

Bestimmen Sie, ob die Der Knoten befindet sich auf der Seite:

var is_exist = document.getElementsByTagName(&#39;div&#39;).exist();
alert(is_exist); // true
  
var is_exist = document.getElementsByTagName(&#39;span&#39;).exist();
alert(is_exist); // true
  
var is_exist = document.getElementsByTagName(&#39;p&#39;).exist();
alert(is_exist); // false
Nach dem Login kopieren

Hinweis: Wenn Sie die Methode document.getElementById() verwenden, um das Objekt abzurufen, können Sie die Methode „exist(“ nicht verwenden. )-Methode, da die Methode zum Abrufen des Knotenobjekts basierend auf der ID nicht abgerufen werden kann. Bei Knoten wird ein leeres Objekt zurückgegeben und die Prototypfunktion exist() wird nicht integriert, sodass ein Fehler gemeldet wird! Wenn Sie also das Objekt basierend auf der ID abrufen, können Sie if(obj) direkt verwenden, um festzustellen, ob der DOM-Knoten auf der Seite vorhanden ist

jQuery ermittelt, ob der DOM-Knoten auf der Seite vorhanden ist

Sie können dies tun

Prototyp hinzufügen:

(function($) {
 $.fn.exist = function(){
  if($(this).length>=1){
   return true;
  }
  return false;
 };
})(jQuery);
Nach dem Login kopieren

Verwendung:
Wenn die Seite die folgenden DOM-Knoten hat

这里是id=a节点
<div>这里是DIV节点</div> <div>这里是DIV节点</div> <span>这里是span节点</span>
Nach dem Login kopieren

Beurteilung:

alert($(&#39;#aaa&#39;).exist()); // false
alert($(&#39;#a&#39;).exist()); // true
alert($(&#39;div&#39;).exist()); // true
alert($(&#39;p&#39;).exist()); // false
Nach dem Login kopieren

Die beiden oben genannten Methoden bestimmen tatsächlich, ob Das Objekt existiert basierend auf dem Längenattribut der Objektsammlung.


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 Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage