当前位置: 代码迷 >> Web前端 >> jquery中解决div mouseout事件冒泡的有关问题
  详细解决方案

jquery中解决div mouseout事件冒泡的有关问题

热度:19   发布时间:2012-11-25 11:44:31.0
jquery中解决div mouseout事件冒泡的问题

在使用jquery进行事件监听时,有可能会出现事件冒泡的问题

?

解决的办法是,使用jquery的bind方法

?

如:现在有一个div对象需要监听他的鼠标事件:

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

?

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

JS为:

 $(function(){
                 var sortList = $("#sortList");
            $("#searchSort").mouseover(function() {
                 var offset = $(this).offset();
                sortList.css("left", offset.left);
                sortList.css("top", offset.top+20);
                sortList.show();
            });
//关键的一句,绑定Div对象的mouseleave事件
            sortList.bind("mouseleave", function() {
                $(this).hide();
            });
        });
?

?

  相关解决方案