如何使用 :contains() 选择器来确定单击的对象具有某个关键字?
如何使用 :contains
来查找被点击的对象是否具有某个关键字?
<a href="#" class="click">» Read More</a>
$('.click').click(function() {
if($(":contains('More')", this)) alert('1');
});
每当它包含或不包含关键字时我都会收到警报...我该如何制作?
How can use :contains
to find the object has a certain keyword when it is clicked?
<a href="#" class="click">» Read More</a>
$('.click').click(function() {
if($(":contains('More')", this)) alert('1');
});
I get the alert whenever it contains the keyword or not... how can I make it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您需要使用
is
来查看元素是否与您的匹配:包含
选择器:示例: http://jsfiddle.net/3N8ek/
You need to use
is
to see if an element matches your:contains
selector:Example: http://jsfiddle.net/3N8ek/
试试这个:
Try this:
您总是收到
alert
因为您没有检查 jQuery 对象的length
属性。当 jQuery 没有找到任何匹配项时,它总是至少返回一个空对象。因此,无论如何if($(":contains('More')", this))
将始终返回true
。You are always getting
alert
because you are not checking forlength
property of jQuery object. jQuery always returns at least an empty object when it do not find any match. Soif($(":contains('More')", this))
will always returntrue
no matter what.这应该有效:
有关用法的更多信息,请参阅 :contains-docs 。
This should work:
See :contains-docs for more on the usage.