如何选择< a href =“...”> foo< / a> DOM节点,知道foo?
解决方法
您可以使用
.filter()
,如下所示:
$("a").filter(function() { return $(this).text() === "foo"; }).doSomething();
如果您不需要完全匹配,还有:contains()
选择器,如下所示:
$("a:contains('foo')").doSomething();
如果您要查找的文本位于元素中的任何位置,则此方法不起作用.
或者,如果您想要完全匹配并经常进行匹配,请为此创建一个选择器,如下所示:
$.expr[":"].textEquals = function(obj,index,Meta) { return $(obj).text() === Meta[3]; }
然后你可以随时使用它,像这样:
$("a:textEquals('foo')").doSomething();