在网页中,有两个可滚动的div。
当我按Arrow down key
时,其中一个div向下滚动。
网页如何知道应该滚动哪个div?
这个div中是否有一个标记应该滚动?
如何编程来验证这一点?
实际上,我想控制这种滚动行为。当我按下箭头键时,我想将焦点放在div中的下一个项目而不是滚动。
答案 0 :(得分:0)
如果您真的想使用javascript,可以试试这个:
$(window).scroll(function(eventObject) {
// do stuff! You can find out about how far the window has scrolled via the eventObject.
});
答案 1 :(得分:0)
为两个div提供ID,例如div1和div2
捕获div1的关键事件并将焦点设置为div2 处理程序
如果是JQuery,您可以使用以下代码: -
$('#div1').keydown(function(e) {
switch(true) {
case (e.which==37) || (e.which==38) || (e.which==39) ||(e.which==40) :
$('#div2').focus();
break;
default: return; // exit this handler for other keys
}
e.preventDefault(); // prevent the default action (scroll / move caret)
});
如有任何疑问,请与我们联系。
答案 2 :(得分:0)
如果您没有在div上设置tabindex,其他答案将无法运作。
点击此处https://jsfiddle.net/Havock94/qb2hy8Lt/
在div上设置tabindex
<div id="one" tabindex="1">
捕获keydown并阻止滚动
$('div').keydown(function(e) {
e.preventDefault();
然后处理按键