我正在客户端网站上运行幻灯片。幻灯片显示每张幻灯片的动画,并且单独依赖于鼠标的滚轮,尽管它也可以滑动'在触摸屏设备中。
这里需要注意的是,在使用滚轮时,页面实际上并没有 scoll,它只会激活下一个幻灯片动画。这个网页实际上从未在传统意义上被骂......
然而,有些人不使用滚轮,他们使用键盘箭头。
有没有办法,理想情况下使用JavaScript,强制箭头键模拟鼠标滚轮的单个滚动?
我为缺乏代码或以前的努力而道歉 - 我无法找到与此问题相关的任何内容,并且代码已完全嵌入到幻灯片扩展程序中。我希望添加自己的JS来补充基础幻灯片。
答案 0 :(得分:2)
您可以尝试使用以下内容通过代码触发gallery元素上的mousewheel事件:
var element = <reference to the element the mousewheel events are bound to>
document.addEventListener('keydown', function(e){
var event = new Event('MouseEvents');
event.initEvent('mousewheel', true, true);
switch(e.keyCode){
case '37':
event.wheelDelta = -1;
element.dispatchEvent(event);
break;
case '39':
event.wheelDelta = 1;
element.dispatchEvent(event);
break;
}
});
https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Creating_and_triggering_events
答案 1 :(得分:0)
你可以尝试这样的事情。这不是一个实际的解决方案,而是一种方法。
$('#someContainer').scroll(function(){
$( "#target" ).keydown();
})
答案 2 :(得分:0)
你可以这样做:
yourElement.addEventListener('onkeydown', function(e) {
var key = e.which || e.keyCode;
if (key === 37) { // arrow left
// Your code here
} else if (key === 39) { // arrow right
// Your code here
}
});