Home > php教程 > PHP开发 > A simple way to determine whether a DOM node exists using JS/jQuery

A simple way to determine whether a DOM node exists using JS/jQuery

高洛峰
Release: 2016-12-05 14:26:28
Original
1427 people have browsed it

JS natively determines whether a DOM node exists in the page

JavaScript native function does not provide a method to determine whether a DOM node exists. We usually obtain DOM nodes using the document.getElement.. method, which will return an object array set. We can use object [0], object[1] is used to access each object in this collection. Since an array set is returned, there is a length attribute, and length greater than or equal to 1 means that the DOM node exists in the page. Code:

Object.prototype.exist = function(){
 if(typeof this !='undefined' && this.length>=1){
  return true;
 }
  
 return false;
};
Copy after login

Usage:

Assume that the page has the following nodes

<div>这里是DIV节点</div>
<div>这里是DIV节点</div>
<span>这里是span节点</span>
Copy after login

Determine whether the node is on the page:

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
Copy after login

Note: If you use the document.getElementById() method to obtain the object, you cannot use the exist() method, because the method of getting the node object based on the ID cannot be obtained. In the case of nodes, an empty object will be returned and the prototype exist() function will not be integrated, so an error will be reported! So if you are fetching the object based on the ID, you can directly if(obj). This way you can determine whether the DOM node exists in the page.

jQuery determines whether the DOM node exists in the page.

You can do this

Add prototype:

(function($) {
 $.fn.exist = function(){
  if($(this).length>=1){
   return true;
  }
  return false;
 };
})(jQuery);
Copy after login

How to use:

If the page has the following DOM nodes

这里是id=a节点
<div>这里是DIV节点</div> <div>这里是DIV节点</div> <span>这里是span节点</span>
Copy after login

Judgment:

alert($(&#39;#aaa&#39;).exist()); // false
alert($(&#39;#a&#39;).exist()); // true
alert($(&#39;div&#39;).exist()); // true
alert($(&#39;p&#39;).exist()); // false
Copy after login

The above two methods actually determine whether the object exists based on the length attribute of the object collection.

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template