最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

jquery事件w中mouseout和mouseleave的区别分享

来源:动视网 责编:小采 时间:2020-11-27 20:18:16
文档

jquery事件w中mouseout和mouseleave的区别分享

jquery事件w中mouseout和mouseleave的区别分享:这篇文章主要以实例详细讲解了jquery中mouseleave和mouseout的区别,模仿下拉框效果,感兴趣的小伙伴们可以参考一下本文详细的介绍了关于jQuery中mouseleave和mouseout的区别,分享给大家供大家参考,具体内容如下很多人在使用jQuery实现鼠标悬停效果时
推荐度:
导读jquery事件w中mouseout和mouseleave的区别分享:这篇文章主要以实例详细讲解了jquery中mouseleave和mouseout的区别,模仿下拉框效果,感兴趣的小伙伴们可以参考一下本文详细的介绍了关于jQuery中mouseleave和mouseout的区别,分享给大家供大家参考,具体内容如下很多人在使用jQuery实现鼠标悬停效果时


这篇文章主要以实例详细讲解了jquery中mouseleave和mouseout的区别,模仿下拉框效果,感兴趣的小伙伴们可以参考一下

本文详细的介绍了关于jQuery中mouseleave和mouseout的区别,分享给大家供大家参考,具体内容如下
很多人在使用jQuery实现鼠标悬停效果时,一般都会用到mouseover和mouseout这对事件。而在实现过程中,可能会出现一些不理想的状况。
先看下使用mouseout的效果:

第一行第二行第三行我们发现使用mouseout事件时,鼠标只要在下拉容器#list里一移动,就触发了hide(),其实是因为mouseout事件是会冒泡的,也就是事件可能被同时绑定到了该容器的子元素上,所以鼠标移出每个子元素时也都会触发我们的hide()。
从jQuery 1.3开始新增了2个mouse事件,mouseenter和mouseleave。与mouseout事件不同,只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。
我们来看一下mouseleave事件的效果:

第一行第二行第三行mouseleave和mouseout事件各有用途,因为事件冒泡在某些时候是非常有用的
解决p mouseout事件冒泡的问题
解决的办法是,使用jquery的bind方法
如:现在有一个p对象需要监听他的鼠标事件

<p class="dpx2"><p class="dpx2_px" style="cursor:pointer;" id="searchSort">请选择排序方式↓</p>
 <p class="dpx2_px_xl" id="sortList" style="display:none;position:absolute;z-index:5;">
 <p><a class="sortA">按时间升序↑</a></p>
 <p><a class="sortA">按时间降序↓</a></p>
 <p><a class="sortA">按评论数量升序↑</a></p>
 <p><a class="sortA">按评论数量降序↓</a></p>
 <p><a class="sortA">按点击数升序↑</a></p>
 <p><a class="sortA">按点击数降序↓</a></p>
 </p>
 </p>

当鼠标移动到ID为searchSort的p上时,显示下面的p。当鼠标移出下面的p时,隐藏p
JS为:

根据上述讲解,模拟实现下拉效果:
1.不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件。

2.只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。

<p class="sel_box">
 <input type="button" value="请选择所属部门" id="sel_dept" />
 <p class="hide" id="sel_dept_sh" style="display: none;">
 <p>
 <font>深圳市公司 </font>
 </p>
 <p>
 <font>集团管理层 </font>
 </p>
 </p>
</p>
 
<script type="text/javascript">
$(".sel_box").click(function(event){
 if(event.target.id == 'sel_dept'){
 $("#sel_dept_sh").show(); //显示下拉框
 $("#sel_dept_sh p font").click(function(){
 $("#sel_dept").val('');
 var text = $(this).text();
 // alert(text);
 $("#sel_dept").val(text).css("color","#000");
 $("#sel_dept_sh").hide();
 });
 
 }else{
 $("#sel_dept_sh").hide();
 }
 
 
});
 
$(".sel_box").bind("mouseleave",function(){//用mouseleave就实现了模仿下拉框的效果
 $(this).find(".hide").hide(); 
 });
 
$(".sel_box").bind("mouseout",function(){//而mouseout则不行,什么时候都会触发
 $(this).find(".hide").hide(); 
 });
</script>

文档

jquery事件w中mouseout和mouseleave的区别分享

jquery事件w中mouseout和mouseleave的区别分享:这篇文章主要以实例详细讲解了jquery中mouseleave和mouseout的区别,模仿下拉框效果,感兴趣的小伙伴们可以参考一下本文详细的介绍了关于jQuery中mouseleave和mouseout的区别,分享给大家供大家参考,具体内容如下很多人在使用jQuery实现鼠标悬停效果时
推荐度:
标签: 分享 事件 的区别
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top