jQuery选择所有以“o”开头并后跟数字的元素
Posted
技术标签:
【中文标题】jQuery选择所有以“o”开头并后跟数字的元素【英文标题】:jQuery select all element starting with "o" and followed by number 【发布时间】:2014-11-22 07:45:43 【问题描述】:我想在某个 div 上添加事件。对象是当用户将鼠标放在 div 上时,做某事,当他的鼠标退出我的 div 时做其他事情。我想在每个 div 上添加该事件,以“0”开头,后跟一个数字。但问题是我无法访问 jQuery 官方文档,而且我找不到使用 Google 的正确方法。 我认为:
$('div[id^="o"]')
它可以工作,但我想确保它只选择正确的 div,而不是其他以 o 开头且不直接跟数字的 div。
做我的活动可以这样吗?
$(the right selector).each(function whenMouseEnter(element,id), function whenMouseExit(element,id));
【问题讨论】:
【参考方案1】:由于 jQuery 的选择器缺少正则表达式函数,您需要使用 filter()
显式测试每个找到的元素的 id
:
$('div[id^="o"]').filter(function ()
return (/^o\d/).test(this.id);
).hover(function ()
// mouse over
, function ()
// mouse leave
);
参考资料:
javascript:RegExp()
。
RegExp.prototype.test()
;
jQuery:
filter()
。
hover()
。
【讨论】:
漂亮的答案,我现在就试试这个。非常感谢 我可以在函数中添加 2 个变量 element 和 id 来引用实际的 div 吗? 是的,如果你愿意的话;你想做什么? 我必须在鼠标悬停时显示/隐藏一个子元素,但在您的帮助下,它就像我想要的那样完成了。再次感谢您以上是关于jQuery选择所有以“o”开头并后跟数字的元素的主要内容,如果未能解决你的问题,请参考以下文章
jQuery或CSS选择器选择以某个字符串开头的所有ID [重复]