jquery插件實現鼠標隱藏

本文實例為大傢分享瞭jquery插件實現鼠標隱藏的具體代碼,供大傢參考,具體內容如下

鼠標懸浮在某個dom上的時候,自動給你隱藏,效果圖因為錄屏軟件的問題,作用不出來

效果如下

代碼部分

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>做久置隱藏</title>
  <script src="js/jquery-3.4.1.min.js"></script>
  <style>
   *{
    margin: 0;
    padding: 0;
   }
   .box{
    border: 1px solid lightgray;
    width: 100px;
    height: 100px;
    margin: 10px;
    float: left;
   }
  </style>
 </head>
 <body>
  <div class="box" id="box1" style="background-color: #1abc9c;"></div>
  <div class="box" id="box2" style="background-color: #3498db;"></div>
  <div class="box" id="box3" style="background-color: #f1c40f;"></div>
  <div class="box" id="box4" style="background-color: #e74c3c;"></div>
  <div class="box" id="box5" style="background-color: #9b59b6;"></div>
 </body>
</html>
<script>
 $(function(){
  $.mh(["#box1","#box3","#box5"]);
  
  
  
 })
 $.extend({
  mh:function(op,time){
   op=op==undefined?[]:op;//對象
   time = time==undefined?500:time;//多久隱藏
   var str = op.join(',');
   var t = null;
   var f = false;
   $(str).mouseenter(function(){
    f = true;
    $(str).css('cursor','default');
   }).mouseleave(function(){
    f = false;
    clearTimeout(t);
    $(str).css('cursor','default');
   }).mousemove(function(){
    if(f){
     $(str).css('cursor','default');
     clearTimeout(t);
     hid();
    }else{
     clearTimeout(t);
    }
   })
   function hid(){
    t =setTimeout(function(){
     $(str).css('cursor','none');
     console.log('隱藏瞭');
    },time)
   }
  }
 })
</script>

思路解釋

  • 把所有動作考慮進去,隻要鼠標符合我們的判斷,給一個樣式cursor:none就完事
  • 此外就是給上cursor:default還原默認樣式瞭

以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。

推薦閱讀: