gpt4 book ai didi

javascript - 我如何防止在 javascript 中向下滚动?

转载 作者:行者123 更新时间:2023-11-29 10:22:00 25 4
gpt4 key购买 nike

好吧...我可能是个懒惰的人,但我能找到的东西有点烦人

当我搜索“我如何防止向下滚动”时,“我如何设置向下滚动事件”。

在我的 javascript 代码中,我为向下箭头键设置了事件。当我按下向下箭头时

从浏览器来看,浏览器不仅做了我设置的一个事件,还做了

向下滚动页面,这不是我想要的。所以这是我的问题。

如何禁用按下向下箭头时出现的向下滚动功能?

我们将不胜感激。

最佳答案

如果你想阻止垂直滚动条和用户的任何垂直滚动 Action ,你可以使用这个javascript:

document.body.style.overflowY = "hidden";​

或者,这也可以用 CSS 规则设置:

body {overflow-y: hidden;}

另一方面,如果您想要做的是在处理向下数组后阻止向下箭头的默认键处理程序执行任何操作,那么您需要调用 e.preventDefault() 像这样:

function myKeyDownHandler(e) {
// your code here
e = e || window.event;
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnValue = false; // older versions of IE (yuck)
}
return false;
}

如果您需要在多个地方执行此操作,一种更简洁的方法是为此创建您自己的跨浏览器功能:

function preventDefault(e) {
e = e || window.event;
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnValue = false; // older versions of IE (yuck)
}
}

function myKeyDownHandler(e) {
// your code here
preventDefault(e);
return false;
}

这是跨浏览器框架(jQuery/YUI/等)为您节省时间的完美示例之一,因为它们已经为您完成了所有这些跨浏览器工作。

这是一个 interesting articlepreventDefaultstopPropagation() 上。

关于javascript - 我如何防止在 javascript 中向下滚动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9817158/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com