首页 > 代码库 > $.contains(a,b)

$.contains(a,b)

jQuery.contains()函数用于判断指定元素内是否包含另一个元素。

简而言之,该函数用于判断另一个DOM元素是否是指定DOM元素的后代。

该函数属于全局jQuery对象。

语法

jQuery 1.4 新增该静态函数。

jQuery.contains( container, contained )

参数

参数描述
containerElement类型指定可能包含其他元素的祖辈容器元素。
containedElement类型指定可能被其他元素包含的后代元素。

返回值

jQuery.contains()函数的返回值为Boolean类型,如果指定元素包含另一个元素,则返回true,否则返回false

示例&说明

jQuery.contains()仅用于比较两个DOM元素(Element类型,不能是NodeList或其他对象)。它会从contained元素的父元素开始逐级向上查找,判断其是否等于container元素,如果是则返回true,否则返回false

请参考以下HTML示例代码:

<div id="n1">    <p id="n2">        <span id="n3">CodePlayer</span>    </p></div><p id="n4">专注于编程开发技术分享</p>

以下是与jQuery.contains()函数相关的jQuery示例代码,以演示jQuery.contains()函数的具体用法:运行代码

//在当前页面内追加换行标签和指定的HTML内容
function w( html ){
    document.body.innerHTML += "<br>" + html;
}

var n1 = document.getElementById("n1");
var n2 = document.getElementById("n2");
var n3 = document.getElementById("n3");
var n4 = document.getElementById("n4");
var span = document.getElementsByTagName("span");

// n1包含n2
w( $.contains(n1, n2) ); // true

// n1包含n3
w( $.contains(n1, n3) ); // true

// n1不包含n4
w( $.contains(n1, n4) ); // false

// n1虽然包含span元素(n3),但变量span是NodeList对象,不是Element类型。
w( $.contains(n1, span) ); // false

$.contains(a,b)