当图层重叠时,悬停对象在背景/前景元素上出现两次
Hover object comes up twice on background/foreground element when layers are overlapping
请查看此示例:http://jsfiddle.net/AAd9b/1/
每次我将鼠标悬停在此对象上时,重叠的对象都会打开两次,如何使其只淡入一次并停留在那里,直到我鼠标全部悬停?因此,无论您是在背景对象还是前景对象上都没关系。
.hover()
接受两个参数:handlerIn
和handlerOut
。如果只提供一个回调,则会在两个事件上调用该回调,因此您需要查看事件类型以确定是fadeIn
还是fadeOut
http://api.jquery.com/hover/
您可能正在寻找这个:
$('.someclass').hover(
function() {
//-- mouseenter
},
function() {
//-- mouseleave
}
);
元素在鼠标下闪烁的原因是因为它触发了$('.someclass')
上的mouseleave
事件(因为从技术上讲,鼠标确实离开了该对象)。这是一个棘手的情况。可能会涉及在鼠标悬停在<p>
上时取消绑定和重新绑定事件......或者一些花哨的CSS技巧。
或者试试这个:http://jsfiddle.net/UBdgz/
.HTML:
<div class="wrapper">
<div class="someclass">
<a href="#">Hover Me</a>
</div>
<p>Only Once!</p>
</div>
.JS:
var handleHover = function(evt) {
switch (evt.type) {
case 'mouseenter':
$("p").fadeIn();
break;
case 'mouseleave':
$("p").fadeOut();
break;
}
}
$(".wrapper").bind('mouseenter mouseleave', handleHover);
相关文章:
- Append元素在运行两次函数后不显示
- 单击元素两次后执行操作
- 为什么DTM数据元素被调用两次
- addEventListener对所有元素都有效,但有时它会提醒消息两次或多次
- 元素必须单击两次才能添加Class(自定义指令)
- 如何两次插入相同的html元素
- 为什么<选择>当在windowsphone 8.1中点击时,元素会被触发两次
- 当图层重叠时,悬停对象在背景/前景元素上出现两次
- 如何在同一元素中调用两次onclick
- 聚合物元素注册和生命周期(创建和准备调用两次)
- 在同一元素上单击两次,然后在另一个元素上单击两次,使第一个元素进入“单击”状态
- 由于嵌套元素,单击侦听器激发两次
- 在一个元素上单击两次
- 父DOM元素是否侦听事件两次
- 追加元素,获取追加两次
- 在一个元素上添加两次相同的类
- reactjs:为什么在render中定义的一些dom元素显示两次
- Webdriver按坐标单击元素两次
- 横贯显示元素两次
- 使用JavaScript插入HTML元素两次(或两次以上)