gpt4 book ai didi

javascript - preventDefault 不适用于 Chrome 或 Safari 中的 pageup 或 pagedown

转载 作者:行者123 更新时间:2023-11-30 12:14:07 26 4
gpt4 key购买 nike

我正在努力将键盘控件添加到日期选择器以实现辅助功能。我想使用 pageuppagedown 键在下个月和上个月之间切换。作为代码的一部分,我使用 e.preventDefault 来防止页面仅在日期选择器打开时向上或向下滚动。我可以在 Firefox 和 IE 中使用它,但不能在 Chrome 或 Safari 中使用。

我不会在这里发布完整的代码,但我在下面创建了测试代码。无论我尝试什么,当在 Chrome 或 Safari 中按下这些键时,页面仍然向上/向下滚动。我无法使用 updownleftright 键,因为它们用于导航焦点在每个月的几天之间。

$(window).keyup(function(e) {
console.log(e.keyCode);
if(e.keyCode === 34) {

console.log('page down');

e.preventDefault();
e.stopPropagation;
e.stopImmediatePropagation();
return false;
}

最佳答案

代码有几个问题。

您无法阻止 keyup 上的键的默认操作。到那时代码已经运行了。它必须位于 keydown 上。

第二个问题是 keyCode 是一个整数而不是字符串,所以您的 if 语句不会被输入。

http://jsfiddle.net/ymr744p4/

$(window).keydown(function(e) {
console.log(e.keyCode);
if(e.keyCode === 34) {
console.log('page down');
e.preventDefault();
}
});

关于javascript - preventDefault 不适用于 Chrome 或 Safari 中的 pageup 或 pagedown,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32891426/

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