I have the following html:
<a href="#DDD">Link here </a>
我希望能够通过语音命令选择包含“Link Here”文本的A标签。
我已经尝试过:
$('a[value="Link here"]')
$('a :contains("Link here")')
但是这并不起作用。
似乎无法找到我哪里出错了。
I have the following html:
<a href="#DDD">Link here </a>
我希望能够通过语音命令选择包含“Link Here”文本的A标签。
我已经尝试过:
$('a[value="Link here"]')
$('a :contains("Link here")')
但是这并不起作用。
似乎无法找到我哪里出错了。
标签名和伪选择器之间不应该有空格。空格表示:contains("Link here")
是另一个元素,而不是在a
内部的同一个元素。你应该使用:
$('a:contains("Link here")')
:contains
会选择一个元素,即使它在参数中有更多的内容(例如:'Link here bla bla bla'也会被返回)。如果你需要精确地选取文本为'Link here ',你可以使用filter()
:
$('a').filter(function(){
return this.innerHTML == 'Link here '; // (Did you know you have a space at the end?)
}).css({background:"#F00"});
$("a.myclass:contains('Text')")
这个会起作用 :D
:contains
的意思是如果元素包含某些文本,而不是指元素的文本等于某些文本。所以你在找什么?获取具有文本“Link Here”的A标签。 - A. Wolff