我有一個對話框出現時,用戶單擊任何單位。你可以檢查它是如何工作在這裏:CLICK HERE如何鎖定滾動條並使其可見
我想要做的是鎖定滾動條,如果視口高度大於550像素。現在我將overflow:hidden
應用於身體,但是當滾動條隱藏時,這會導致網站跳躍。我想禁用滾動,但仍然顯示滾動條。可能嗎?
在此先感謝!
我有一個對話框出現時,用戶單擊任何單位。你可以檢查它是如何工作在這裏:CLICK HERE如何鎖定滾動條並使其可見
我想要做的是鎖定滾動條,如果視口高度大於550像素。現在我將overflow:hidden
應用於身體,但是當滾動條隱藏時,這會導致網站跳躍。我想禁用滾動,但仍然顯示滾動條。可能嗎?
在此先感謝!
可以通過檢測滾動和滾動回到原來的位置。(這可能顯得生澀在某些瀏覽器尤其是當你拖動滾動條本身)
function lockScroll() {
var lockX = window.scrollX;
var lockY = window.scrollY;
function lockIt() {
window.scrollTo(lockX,lockY);
return false;
}
window.addEventListener("scroll",lockIt,false)
return {
stop: function(){
window.removeEventListener("scroll",lockIt,false)
}
}
}
使用模擬滾動鎖:
var locker = lockScroll(); // locks scrolling
而且當你做,你可以重新啓用滾動
locker.stop(); // unlocks scrolling
謝謝 - 這幫了我。但是有一個小錯誤使它無法使用。你忘了一個「;」在window.addEventListener(「scroll」,lockIt,false)之後..之後,它工作得很好。 (不要在return子句中添加一個 - 以某種方式再次打破它 – Matt
鏈接似乎是b roken。 –
它沒有壞,現在肯定是 – lukaleli
。當然。 –