jQuery:has()和jQuery:contains()两个方法比较类似。不同点在于:
has是判断标签的
contains是判断文本的
1、jQuery:has()
<div><p>Hello</p></div> <div>Hello again!</div> $("div:has(p)").addClass("test"); //含有p标签的div标签增加test样式
注:has中的括号里可以含引号也可以省略。
2、jQuery:contains()
<div>John Resig</div> <div>George Martin</div> <div>Malcom John Sinclair</div> <div>J. Ohn</div> $("div:contains('John')").addClass('test'); //给含有John文本的div标签增加test样式
注:contains中的括号里可以含引号也可以省略。
3、jQuery:empty
<div></div> <div><span></span></div> <div>span</div> $('div:empty').addClass('test'); //给不含任何文本并且不含任何标签的div增加样式test
根据不同的内容和属性可以准确定位到需要找的属性
如何根据内容筛选标签?
:contains 匹配包含给定的文本元素
$("div:contains('Jhon')")
:has 匹配含有选择器所匹配的元素的元素
$("div:has(p)").addClass("test") p为标签
以上是jquery :has()和:contains()选择器两者之间的区别的详细内容。更多信息请关注PHP中文网其他相关文章!