Javascript 自动滚动分区-

Javascript 自动滚动分区-,javascript,jquery,html,scroll,Javascript,Jquery,Html,Scroll,我使用stackoverflow中共享的代码片段构建了一个原型。我希望添加一个延迟计时器,这样只有当用户没有活动时才会自动滚动。另外,我如何使它更便于触摸,而不是使用悬停 以下是原型的一部分: 下面是片段: //全局级变量。 var isPaused=假; var方向=1; 变量元素=$('框'); //滚动的间隔。 setInterval(函数(){ 如果(!i暂停){ var pos=element.scrollLeft(); var偏移=1*方向; 元素。向左滚动(位置+偏移量); /

我使用stackoverflow中共享的代码片段构建了一个原型。我希望添加一个延迟计时器,这样只有当用户没有活动时才会自动滚动。另外,我如何使它更便于触摸,而不是使用悬停

以下是原型的一部分:

下面是片段:

//全局级变量。
var isPaused=假;
var方向=1;
变量元素=$('框');
//滚动的间隔。
setInterval(函数(){
如果(!i暂停){
var pos=element.scrollLeft();
var偏移=1*方向;
元素。向左滚动(位置+偏移量);
//点击结束时更改滚动方向。

如果((element[0].scrollWidth-element.scrollLeft()==element.outerWidth())| |(element.scrollLeft())如果我理解正确,您的代码运行良好,但您希望为手机等设备提供一种更有效的方式,即没有
悬停

关于
touchstart
事件呢? 大概是这样的:

$('#box').on('touchstart', function(ev){
  if (isPaused){
    isPaused = false;
  }else{
    isPaused = true;
  }
});
我没有对此进行测试,我不知道它是否会像您预期的那样工作,但我的逻辑是:
框在滚动,然后用户触摸
#box
它就会停止,如果他再次触摸,它就会再次开始滚动。这只是一个想法

编辑

下面是我们在评论中谈论的内容的一个片段
空闲计时器直到滚动+悬停并触摸事件停止滚动
打开代码段并运行以进行测试

$(文档).ready(函数(){
//全局级变量。
var isPaused=假;
var方向=1;
变量元素=$('框');
var waitTimerUntilScroll=4000;
var idleTimer=setTimeout(setScrolling,waitTimerUntilScroll);
变量滚动条;
window.onmousemove=resetTimer;
window.onmousedown=重置计时器;
window.ontouchstart=resetTimer;
window.onclick=resetTimer;
window.onkeypress=重置计时器;
window.addEventListener('scroll',resetTimer,true);
$(“#框”)。打开('touchstart',函数(ev){
如果(i暂停){
isPaused=false;
}否则{
isPaused=真;
}
});
$(“#框”)。悬停(
函数(){
isPaused=真;
}, 
函数(){
isPaused=false;
}
);  
函数resetTimer(){
clearTimeout(idleTimer);
idleTimer=setTimeout(setScrolling,waitTimerUntilScroll);//时间以毫秒为单位
}
//滚动间隔-仅在空闲时调用
函数setScrolling(){
scroller=setInterval(函数(){
如果(!i暂停){
clearTimeout(idleTimer);
var pos=element.scrollLeft();
var偏移=1*方向;
元素。向左滚动(位置+偏移量);
//点击结束时更改滚动方向。

if((元素[0].scrollWidth-element.scrollLeft()==element.outerWidth())| |(元素.scrollLeft())谢谢!我当然会试试。我也在寻找一种方法,只有在用户20秒以上没有活动的情况下才能使用autoscroll。如果用户没有活动,请检查以下内容:谢谢Calvin,我看过这篇文章,但是由于我缺乏js知识,我无法有效地将两者集成起来!我可以请求您为我的jsfiddle提供一个服务吗d整合这两个部分?嗨,卡尔文,不确定我做错了什么!这是一个带无活动计时器的叉形小提琴-让我知道你的想法!请不要垃圾发送这个已经回答的问题,在s.O.这里创建一个新问题,这样其他人可以看到你的问题并尝试帮助。另外,如果我的答案有用的话对于您的原始问题,请标记为已接受