jquery 点击特定元素以外任意地方隐藏该元素


办法一:

第一,先实现点击任何地方都隐藏该元素(假设id="bar")

$(document).click(function(){
$("#bar").hide();

});

第二,点击特定元素不隐藏


那么bar也属于document,点击bar也会让自己隐藏,显然这不是想要的,这时候要阻止冒泡事件,即document的事件对bar无效


$("#bar").click(function(event){
    event.stopPropagation();
});

办法二:

 

$(document).click(function(e){

   if  ($(e.target).find( '.select_box' ).length !== 0 ){
   // 如果 你点击的这个元素 里面包含 select_box (也就是查找出来的dom 数量不是0)
  // 就执行你需要隐藏的方法  当你点击的元素是select_box 或者他里面的元素 时候,
  // 里面肯定不会 包含 select_box  也就不会执行 隐藏的方法
     if ($( ".option" ).css( 'display' )== 'block' ){
             $( ".option" ).hide();
         }
   }
     
});


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM