场景:我们需要获取包含具体文本的DOM一个节点时
工具:1.可以想到使用 Jquery的$(":contains("需要定位的文本")")
具体用法见:
缺点:contains函数,会将一些我们并不需要的文本也选择出来。
例如:
$(".combo-p :visible > div:contains('专用DMZ')")
本来我们只需要获取“专用DMZ”具体的文本节点,结果出现 包含“专用DMZPTR”的节点也过滤出来
[专用DMZ,专用DMZPTR]
解决办法:
利用filter,filter是非常强大的,里面可以接受一个函数,这个函数可以做很多事,这里用来精确查找
$(".combo-p :visible > div:contains('文本')").filter(function(){ return $(this).text()=='文本';});