问题描述
我有一个非常简单的滑块,并在其上使用了 touchmove
事件侦听器。
问题是,我必须在同一页面上多次重新加载(更改幻灯片)此滑块,每次执行此操作时,滑块动画都会加快速度。
这是我的 javascript 代码:
sliderItems = document.getElementById('slides');
function slide(items) {
items.addEventListener('touchmove',dragAction);
function dragAction (e) {
e = e || window.event;
// We want here the slides to follow the finger speed
if (e.type == 'touchmove') {
posX2 = posX1 - e.touches[0].clientX;
posX1 = e.touches[0].clientX;
} else {
posX2 = posX1 - e.clientX;
posX1 = e.clientX;
}
items.style.left = (items.offsetLeft - posX2) + "px";
}
}
slide(sliderItems);
HTML 方面:
<div id="mobile-map-toasts-container" class="mobile-map-toasts-container">
<div id="slides" class="slides">
<div class="slide"></div>
<div class="slide"></div>
<div class="slide"></div>
</div>
</div>
每次使用这个 slide()
函数时,触摸拖动动画都更快。
第一次,它按预期工作。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)