Javascript悬停问题
Javascript hover issues
当我使用jQuery的.hover()
或Javascript的mouseenter()
时,事件不仅在鼠标进入元素时触发,而且在鼠标穿过该元素中的任何元素时也会触发。如何停止此操作,使其仅在鼠标进入或退出该元素时触发,而子元素对事件没有影响?
$(document).ready(function(){
introAnimation();
$('#nav-item1').hover(function() {
$('#createSub').slideDown(300);
});
$('#nav-item1').mouseout(function() {
$('#createSub').slideUp(300);
});
$('#nav-item2').hover(function() {
$('#manageSub').slideDown(300);
});
$('#nav-item2').mouseout(function() {
$('#manageSub').slideUp(300);
});
$('#nav-item3').hover(function() {
$('#storeSub').slideDown(300);
});
$('#nav-item3').mouseout(function() {
$('#storeSub').slideUp(300);
});
});
Hover有一个解除覆盖的方法。不需要mouseout事件,当您将鼠标悬停在嵌套的子元素上时会触发该事件:
$(document).ready(function(){
introAnimation();
$('#nav-item1').hover(function() {
$('#createSub').slideDown(300);
},function() {
$('#createSub').slideUp(300);
});
$('#nav-item2').hover(function() {
$('#manageSub').slideDown(300);
},function() {
$('#manageSub').slideUp(300);
});
$('#nav-item3').hover(function() {
$('#storeSub').slideDown(300);
},function() {
$('#storeSub').slideUp(300);
});
});
将其添加到处理程序中:
if( ev.target !== this ){ return; }
ev.target
是鼠标事件触发的内容。this
是将事件绑定到的内容
相关文章:
- jquery快速悬停问题
- d3.js鼠标悬停鼠标输出问题
- 有问题的突出显示(悬停)一个系列,突出显示图表
- 如何在 jquery 中克服此问题以获得动画悬停效果
- 在 Chrome 扩展程序中将鼠标悬停在广告上使用时遇到问题
- Jquery Resize问题.如果宽度小于768宽度,请启用“单击选项”.768以上鼠标悬停选项启用
- D3.js鼠标悬停和焦点+上下文问题
- 悬停和滚动时的页脚问题
- JavaScript/jQuery悬停函数的行为很有趣——数组问题
- Chrome动画CSS3三维立方体与悬停状态问题
- 悬停时更改webkit滚动条宽度时出现重绘问题
- 重绘后悬停在 ChartJS 条形图上的问题
- 对齐悬停时显示的链接时出现问题
- 分机 4 鼠标悬停、鼠标退出和下拉菜单的问题
- JavaScript 鼠标悬停图像交换问题
- 多个 DIV 悬停在点击问题上
- iPad悬停/单击问题
- 使用回调对悬停效果进行动画处理时出现问题
- 如何解决jQuery中鼠标悬停在重叠图像上的问题
- Jquery/Css问题#2:悬停元素触发不需要的悬停动作