jQuery.contains()
函数用于判断指定元素内是否包含另一个元素。
简而言之,该函数用于判断另一个DOM元素是否是指定DOM元素的后代。
该函数属于全局jQuery
对象。
语法
jQuery 1.4 新增该静态函数。
jQuery.contains( container, contained )
参数
参数 | 描述 |
---|---|
container | Element类型指定可能包含其他元素的祖辈容器元素。 |
contained | Element类型指定可能被其他元素包含的后代元素。 |
返回值
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