91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

jquery如何禁止上下滾動事件

發布時間:2021-11-11 11:36:31 來源:億速云 閱讀:530 作者:小新 欄目:web開發

這篇文章主要介紹jquery如何禁止上下滾動事件,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

jquery禁止上下滾動事件的方法:1、打開相應的代碼文件;2、判斷滾動條高度;3、通過“$(document).bind('mousewheel', function(event, delta)...”禁用滾輪事件即可。

本文操作環境:windows7系統、jquery3.2.1版、DELL G3電腦

jQuery禁用、開啟鼠標滾輪事件

寫一個網頁的時候需要剛打開的時候是一個占滿一屏的視頻,想要禁用鼠標滾輪事件,通過點擊向下的按鈕使頁面向下滑動過視頻部分,所以查找了禁用鼠標滾輪的事件方法

1、禁用鼠標滾輪事件

$(document).bind('mousewheel', function(event, delta) {return false;});

之后滑動過視頻以后又要使用鼠標滾輪向下滑動,所以解綁事件,使鼠標滾輪可以使用

2、如果要開啟鼠標滾輪事件,直接解綁事件就可以了

$(document).unbind('mousewheel');

但是鼠標滾輪可以使用后,向上滾動就會回到視頻部分,這時就會很尷尬的發現視頻部分既可以用鼠標滾輪也可以用向下按鈕,所以滑動到視頻部分的時候要禁用鼠標滾輪事件。

怎么判斷到了視頻部分

1、首先判斷我是向上滑動

ps:jQuery 半吊子,所以代碼中又有js代碼又有jquery代碼

window.onscroll = function(){
  p=$(this).scrollTop();
  if(t>p){
    console.log("向上滾動");
  }
  t = p;
};

2、然后判斷滾動條高度是否小于頁面一屏的高度,這里加了一個獲取一屏高度的函數

// 獲取瀏覽器窗口的可視區域的高度
function getViewPortHeight() {
  return document.documentElement.clientHeight || document.body.clientHeight;
}
window.onscroll = function(){
  p=$(this).scrollTop();
  let height = getViewPortHeight();
  if (p >= height){
    $(document).unbind('mousewheel');
  }
  if(t>p){
    if (p < height) {
        $(document).bind('mousewheel', function(event, delta) {
          return false;
        });
        $('html,body').animate({scrollTop:0},1000);
      }
    }
  }
  t = p;
};

但是這樣就會無限的給document禁用或開啟鼠標滾輪事件,so sad

3、獲取事件已經綁定的事件

使用

$._data(obj[0],"event")
var objEvt = $._data($(document)[0], 'events');
window.onscroll = function(){
  p=$(this).scrollTop();
  let height = getViewPortHeight();
  if (p >= height){
    $(document).unbind('mousewheel');
    objEvt = $._data($(document)[0], 'events');
  }
  if(t>p){
    if (p < height) {
      if (!objEvt){
        $(document).bind('mousewheel', function(event, delta) {
          return false;
        });
        objEvt = $._data($(document)[0], 'events');
        $('html,body').animate({scrollTop:0},1000);
      }
    }
  }
  t = p;
};

如果元素已經綁定事件就不綁定了,或者元素綁定了事件就給元素解綁

以上是“jquery如何禁止上下滾動事件”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

台东县| 淳化县| 永安市| 桑植县| 丹棱县| 惠水县| 自贡市| 田东县| 邹平县| 镇江市| 民勤县| 北流市| 讷河市| 铜鼓县| 鹤壁市| 龙游县| 搜索| 修武县| 康马县| 郧西县| 华亭县| 怀宁县| 忻城县| 仁布县| 神池县| 都昌县| 宕昌县| 静宁县| 桑日县| 迁西县| 伽师县| 石嘴山市| 航空| 绥中县| 双流县| 苍梧县| 叶城县| 紫金县| 东明县| 宜兰市| 西峡县|