1
A
回答
7
非常简单:是的,但不这样做。
改变浏览器操作方式的基本操作只是让用户感到困惑或愤怒,并且使整个体验不太友好。用户应该对他或她的浏览器的功能有最终控制权,而不是你。这类似于阻止菜单项被访问或删除上下文菜单等。
0
可能,但它通常不是一个好主意,打破惯例,每个人都知道和了解:d
10
肯定。 使用类似于: document.getElementById('yourID')。onkeypress = HandleKeyPress;
function HandleKeyPress(e) {
var e = e || window.event;
switch (e.keyCode) {
case e.DOM_VK_LEFT:
case e.DOM_VK_RIGHT:
case e.DOM_VK_UP:
case e.DOM_VK_DOWN:
if (e.preventDefault)
e.preventDefault();
else e.returnValue = false;
}
}
虽然这样做可能不是一个好主意。只要确保你不会忽视更好的方法。
-2
1
在jQuery的你可以这样做:
$().keydown(function(e) { return e.keyCode != 38 && e.keyCode != 40; });
2
看起来很多人说不打破浏览器的功能。
我会争辩相同的,除非你用相似或更好的功能替换它。
我经常杀死键盘滚动的元素溢出,因为我已经添加了键盘事件的元素,使用键盘“下”和“上”键选择项目(想到一个发现者或Windows资源管理器窗口)。
默认的滚动使所有的交互都变得糟糕。如果选择了最上面的项目,那么你键入'下',它会选择下一个项目,但然后向下滚动元素并隐藏刚刚选择的项目。
因此,我打破默认滚动,然后添加我自己滚动到选定的项目,如果它低于(或高于)当前滚动视图。这样,当通过文件键入和关闭时,其行为与任何操作系统完全相同。
只是说,打破你想要的一切,但要确保你知道你为什么打破它,用户不会注意到一件事。
0
收听keydown事件并防止默认行为。
jQuery中
$(document).on('keydown.yournamespace', function(e) {e.preventDefault();});
相关问题
- 1. 如何防止按下箭头键时滚动JScrollPane
- 2. 阻止使用箭头键滚动
- 3. 如何防止用户按下退格键/返回箭头
- 4. 是否可以阻止用户使用Page Up,Page Down,向上和向下箭头键从滚动功能?
- 5. AutoCompleteComboBox箭头向上/向下箭头键滚动列表
- 6. 箭头键滚动DIV
- 7. Javascript按住箭头键时?
- 8. 拦截空格和箭头等按键时滚动停止页面
- 9. 当按箭头键时滚动页面内容
- 10. 自动完成的文本框,当向下箭头键按下
- 11. 可以使用箭头键滚动的现代网页(如何)?
- 12. 通过箭头键点击防止按钮被聚焦
- 13. 键盘箭头滚动主滚动条而不是弹出
- 14. 如何检查按下的键是否是Java KeyListener中的箭头键?
- 15. 当按下箭头键时,使MATLAB滑块不滑动
- 16. 分页与按键时(右箭头键)
- 17. 焦点文本输入时用箭头键滚动(Javascript)
- 18. JScrollPane使用箭头键滚动
- 19. 是否可以在lex yacc中使用箭头键?
- 20. 是否可以在OCaml解释器中使用箭头键?
- 21. 在键盘上自动滚动向上/向下箭头
- 22. 如何制作可以按箭头键的vbs文件?
- 23. 如何在jQuery或Javascript中将箭头绑定到“向上滚动”和向下箭头以“向下滚动”?
- 24. 按下箭头键跳转组合框
- 25. (Python3)Linux和Windows箭头键按下
- 26. 按键箭头向下不工作
- 27. 从TabControl C#Winform中滚动选项卡停止箭头键
- 28. 当overflow-x被隐藏时,是否可以防止水平滚动?
- 29. 防止被裁剪箭头头
- 30. div overflow被隐藏,但仍然可以滚动使用键盘右箭头键
我喜欢jQuery的解决方案,我已经使用它..投票了 – Ropstah 2009-05-26 23:23:04