Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript mousemove | touchmove性能问题 JSFIDLE_Javascript_Jquery_Performance_Ecmascript 6_Ecmascript Next - Fatal编程技术网

Javascript mousemove | touchmove性能问题 JSFIDLE

Javascript mousemove | touchmove性能问题 JSFIDLE,javascript,jquery,performance,ecmascript-6,ecmascript-next,Javascript,Jquery,Performance,Ecmascript 6,Ecmascript Next,问题 使用:最新jQuery 为什么这在移动设备上会落后很多?我真的不想再尝试优化这个了 我如何应用去盎司/节流之类的方法?我尝试将setTimeout添加到具有50毫秒延迟的move()函数中,但这也太晚了 移动是如此的滞后。。。动画太慢了 让$state={ 后降:{ 客户端:0, 左:0, }, 后续行动:{ 客户端:0, 左:0, }, dreamedScrollLeft:0, 伊斯敦:错, }; 让定心=假; 让持续时间=250; 让消息=假; 函数消息(){ 如果(消息===true

问题 使用:最新jQuery

为什么这在移动设备上会落后很多?我真的不想再尝试优化这个了

我如何应用去盎司/节流之类的方法?我尝试将setTimeout添加到具有50毫秒延迟的move()函数中,但这也太晚了

移动是如此的滞后。。。动画太慢了

让$state={
后降:{
客户端:0,
左:0,
},
后续行动:{
客户端:0,
左:0,
},
dreamedScrollLeft:0,
伊斯敦:错,
};
让定心=假;
让持续时间=250;
让消息=假;
函数消息(){
如果(消息===true){
log(“%c addScroll”,“背景:#000;颜色:#fff;”,…参数);
}
}
//事件
功能关闭(父级){
返回(事件)=>{
消息('down');
如果($state.isDown==false){
$state.afterDown.clientX=event.originalEvent.touchs?event.originalEvent.touchs[0]。clientX:event.clientX;
$state.afterDown.scrollLeft=$(父级).scrollLeft();
$(parent.stop();
$state.isDown=true;
}
};
}
职能假期(家长){
return()=>{
信息(“离开”);
如果($state.isDown==true){
$(parent.removeClass('scroll-moving');
$state.isDown=false;
}
};
}
函数移动(父级){
返回(事件)=>{
信息(“移动”);
如果($state.isDown==true){
$(parent.addClass('scroll-moving');
const clientX=event.originalEvent.touchs?event.originalEvent.touchs[0]。clientX:event.clientX;
$(父).scrollLeft($state.afterDown.clientX+$state.afterDown.scrollLeft-clientX);
}
};
}
功能滚动(父级){
return()=>{
消息(“滚动”);
如果(居中===真){
if($(父).scrollLeft()===$state.dreamedScrollLeft){
消息(“滚动居中后”);
如果(居中===真){
if($(父).scrollLeft()===$state.dreamedScrollLeft){
消息(“滚动居中后”);
}
}
}
}
};
}
功能启动(父级){
返回(事件)=>{
信息(“向上”);
如果($state.isDown==true){
$(parent.removeClass('scroll-moving');
$state.afterUp.clientX=event.originalEvent.changedTouches?event.originalEvent.changedTouches[0]。clientX:event.clientX;
$state.afterUp.scrollLeft=$(父级).scrollLeft();
如果($state.afterDown.clientX>$state.afterUp.clientX){

消息('您的错误出现在
滚动
鼠标移动
触摸移动
中。是的..去Bounce。它需要一个变量(或一个要查看的属性?)来知道动画是否已经在进行中…需要打开它。