我一直在使用以下代码片段,在Chrome/Safari和Firefox中确定用户是否悬停在锚点上。
我看到有关:hover是CSS选择器的帖子,但我无法理解的是,如果obj中有1个链接,则代码返回true,但如果有2个或更多,则会抛出javascript未识别表达式hover错误。
这是一个: hover工作的fiddle:- http://jsfiddle.net/2kyaJ/122/
相同但多个元素(不起作用):- http://jsfiddle.net/2kyaJ/121/
有人能向我解释一下吗?
顺便说一句,我看到了这个... 如何检查鼠标是否悬停在jQuery元素上?
4年后,这仍然是确定用户是否悬停在元素上的最佳且似乎是唯一的方法吗? 如果是,有人能提供一个示例吗? 编辑:我必须去寻找我需要的内容,但事实证明这个简单的方法非常有效。我目前正在一个插件中使用它,该插件使用jQuery 1.9.1,在父元素(obj)的mouseover上触发动画。希望将来有人会发现它有用。使用.length代替.size,因为从1.8版本开始.size已被弃用。
var isURL = $("a", obj).is(":hover");
我看到有关:hover是CSS选择器的帖子,但我无法理解的是,如果obj中有1个链接,则代码返回true,但如果有2个或更多,则会抛出javascript未识别表达式hover错误。
这是一个: hover工作的fiddle:- http://jsfiddle.net/2kyaJ/122/
相同但多个元素(不起作用):- http://jsfiddle.net/2kyaJ/121/
有人能向我解释一下吗?
顺便说一句,我看到了这个... 如何检查鼠标是否悬停在jQuery元素上?
4年后,这仍然是确定用户是否悬停在元素上的最佳且似乎是唯一的方法吗? 如果是,有人能提供一个示例吗? 编辑:我必须去寻找我需要的内容,但事实证明这个简单的方法非常有效。我目前正在一个插件中使用它,该插件使用jQuery 1.9.1,在父元素(obj)的mouseover上触发动画。希望将来有人会发现它有用。使用.length代替.size,因为从1.8版本开始.size已被弃用。
function isMouseOver() {
if ($('a:hover', obj).length != 0) {
return true;
} else {
return false;
}
}
使用方法:
var isURL = isMouseOver();
.sample
元素都必须同时悬停。您需要单独检查哪个元素(如果有)被悬停以实现您在此处想要的效果。 - BenMtrue
。” - redbmkhover
事件:Uncaught Error: Syntax error, unrecognized expression: hover
。 - BenM语法错误,无法识别的表达式:不支持的伪类:hover
。这表明这是jQuery选择器中的一个限制。 - Barmar