最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

實例講解jquery中mouseleave和mouseout的區(qū)別

 更新時間:2016年02月17日 09:46:24   投稿:lijiao  
這篇文章主要以實例詳細(xì)講解了jquery中mouseleave和mouseout的區(qū)別,模仿下拉框效果,感興趣的小伙伴們可以參考一下

本文詳細(xì)的介紹了關(guān)于jQuery中mouseleave和mouseout的區(qū)別,分享給大家供大家參考,具體內(nèi)容如下
很多人在使用jQuery實現(xiàn)鼠標(biāo)懸停效果時,一般都會用到mouseover和mouseout這對事件。而在實現(xiàn)過程中,可能會出現(xiàn)一些不理想的狀況。
先看下使用mouseout的效果:

<p>先看下使用mouseout的效果:</p>
<div id="container" style="width: 300px;">
<div id="title" style="cursor: pointer; background: #ccc;">使用了mouseout事件↓</div>
<div id="list" style="display: none; position: absolute; background:#fff; border: 1px solid #ccc; width: 298px;">
<div>第一行</div>
<div>第二行</div>
<div>第三行</div>
</div>
</div>
<p><script type='text/javascript'> 
jQuery(document).ready(function($) { 
   $("#title").mouseover(function() { 
     var offset = $(this).offset(); 
     $("#list").css({left: offset.left, top: offset.top+19}).show(); 
   }); 
   $("#container").mouseout(function() { 
     $("#list").hide(); 
   }); 
 }); 
</script>

第一行第二行第三行我們發(fā)現(xiàn)使用mouseout事件時,鼠標(biāo)只要在下拉容器#list里一移動,就觸發(fā)了hide(),其實是因為mouseout事件是會冒泡的,也就是事件可能被同時綁定到了該容器的子元素上,所以鼠標(biāo)移出每個子元素時也都會觸發(fā)我們的hide()。
從jQuery 1.3開始新增了2個mouse事件,mouseenter和mouseleave。與mouseout事件不同,只有在鼠標(biāo)指針離開被選元素時,才會觸發(fā) mouseleave 事件。
我們來看一下mouseleave事件的效果:

<div id="container2" style="width: 300px;">
<div id="title2" style="cursor: pointer; background: #ccc;">使用了mouseleave事件↓</div>
<div id="list2" style="display: none; position: absolute; background:#fff; border: 1px solid #ccc; width: 298px;">
<div>第一行</div>
<div>第二行</div>
<div>第三行</div>
</div>
</div>
<script type='text/javascript'> 
jQuery(document).ready(function($) { 
   $("#title2").mouseover(function() { 
     var offset = $(this).offset(); 
     $("#list2").css({left: offset.left, top: offset.top+19}).show(); 
   }); 
   // 綁定mouseleave事件,效果很好 
   $("#container2").mouseleave(function() { 
     $("#list2").hide(); 
   }); 
 }); 
</script>
<p>

第一行第二行第三行mouseleave和mouseout事件各有用途,因為事件冒泡在某些時候是非常有用的
解決div mouseout事件冒泡的問題
解決的辦法是,使用jquery的bind方法
 如:現(xiàn)在有一個div對象需要監(jiān)聽他的鼠標(biāo)事件

<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">按評論數(shù)量升序↑</a></div>
        <div><a class="sortA">按評論數(shù)量降序↓</a></div>
        <div><a class="sortA">按點擊數(shù)升序↑</a></div>
        <div><a class="sortA">按點擊數(shù)降序↓</a></div>
      </div>
    </div>

當(dāng)鼠標(biāo)移動到ID為searchSort的Div上時,顯示下面的div。當(dāng)鼠標(biāo)移出下面的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();
      });
//關(guān)鍵的一句,綁定Div對象的mouseleave事件
      sortList.bind("mouseleave", function() {
        $(this).hide();
      });
    });

根據(jù)上述講解,模擬實現(xiàn)下拉效果: 
1.不論鼠標(biāo)指針離開被選元素還是任何子元素,都會觸發(fā) mouseout 事件。

2.只有在鼠標(biāo)指針離開被選元素時,才會觸發(fā) mouseleave 事件。

<div class="sel_box">
  <input type="button" value="請選擇所屬部門" id="sel_dept" />
  <div class="hide" id="sel_dept_sh" style="display: none;">
    <p>
      <font>深圳市公司 </font>
    </p>
    <p>
      <font>集團管理層 </font>
    </p>
  </div>
</div>
 
<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就實現(xiàn)了模仿下拉框的效果
    $(this).find(".hide").hide();  
  });
 
$(".sel_box").bind("mouseout",function(){//而mouseout則不行,什么時候都會觸發(fā)
    $(this).find(".hide").hide();  
  });
</script>

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助。

相關(guān)文章

  • jQuery中extend函數(shù)詳解

    jQuery中extend函數(shù)詳解

    這篇文章主要介紹了jQuery中extend函數(shù)詳解,十分詳細(xì),需要的朋友可以參考下
    2015-02-02
  • 深入理解jQuery中l(wèi)ive與bind方法的區(qū)別

    深入理解jQuery中l(wèi)ive與bind方法的區(qū)別

    本篇文章主要是對jQuery中l(wèi)ive與bind方法的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2013-12-12
  • jQuery操作cookie

    jQuery操作cookie

    這篇文章主要介紹了jQuery操作cookie的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-08-08
  • 使用jQuery管理選擇結(jié)果

    使用jQuery管理選擇結(jié)果

    這篇文章主要介紹了使用jQuery管理選擇結(jié)果的相關(guān)資料,需要的朋友可以參考下
    2015-01-01
  • jQuery+C#實現(xiàn)參數(shù)RSA加密傳輸功能【附j(luò)sencrypt.js下載】

    jQuery+C#實現(xiàn)參數(shù)RSA加密傳輸功能【附j(luò)sencrypt.js下載】

    這篇文章主要介紹了jQuery+C#實現(xiàn)參數(shù)RSA加密傳輸功能,結(jié)合具體實例形式分析了js使用jsencrypt.js插件前端字符數(shù)據(jù)處理傳輸及C#后臺數(shù)據(jù)轉(zhuǎn)換與RSA加密相關(guān)操作技巧,并附帶jsencrypt.js供讀者下載參考使用,需要的朋友可以參考下
    2017-06-06
  • jQuery 頁面載入進(jìn)度條實現(xiàn)代碼

    jQuery 頁面載入進(jìn)度條實現(xiàn)代碼

    頁面 Loading 條基本人人都會用。它的原理很簡單:在頁頭放置一個文字或者圖片的 loading 狀態(tài),然后頁尾載入一段 JS 隱藏掉,即根據(jù)瀏覽器的載入順序來實現(xiàn)的簡易 Loading 狀態(tài)條。
    2009-02-02
  • jQuery過濾選擇器用法示例

    jQuery過濾選擇器用法示例

    這篇文章主要介紹了jQuery過濾選擇器用法,包括可見性過濾:hidden、:visible,包含過濾:contains等各種常用的過濾選擇器,需要的朋友可以參考下
    2016-09-09
  • jQuery UI插件實現(xiàn)百度提詞器效果

    jQuery UI插件實現(xiàn)百度提詞器效果

    這篇文章主要介紹了jQuery UI插件實現(xiàn)百度提詞器效果,每個輸入框中有相應(yīng)的文字提示,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • jquery中關(guān)于bind()方法的使用技巧分享

    jquery中關(guān)于bind()方法的使用技巧分享

    這篇文章主要給大家分享了jquery中關(guān)于bind()方法的使用技巧,文中介紹的非常詳細(xì),對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
    2017-03-03
  • 如何快速解決JS或Jquery ajax異步跨域的問題

    如何快速解決JS或Jquery ajax異步跨域的問題

    如何快速解決JS或Jquery ajax異步跨域的問題呢?下面小編就為大家分享一篇快速解決Jquery ajax異步跨域問題的方法,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01

最新評論

屯留县| 庆云县| 湛江市| 通城县| 拉孜县| 谢通门县| 山丹县| 高阳县| 台湾省| 惠水县| 汕尾市| 凤阳县| 曲阜市| 义马市| 明星| 图片| 临汾市| 梧州市| 天等县| 郸城县| 新宾| 丰县| 绥中县| 盐津县| 漳州市| 九龙县| 银川市| 从江县| 长岭县| 秀山| 若尔盖县| 八宿县| 永济市| 墨玉县| 长宁区| 礼泉县| 台中县| 宜君县| 牙克石市| 瑞丽市| 怀化市|