对于初学者来说,我知道这有点重复(JS event independent of finger pressure)。
我对更深入的答案感兴趣。
据我所知,大多数设备(如果不是所有设备)都会暂停执行JS和DOM操作。但是我想知道为什么会发生这种情况,并且可能会就如何解决这个问题提出一些建议。
我有以下内容:
DataBar.prototype = {
init: function(){
this.percentage = this.getPercentage(this.used);
},
getPercentage: function(used){
return (this.total.match(/unlimited/i)) ? 100 : 100 - ( (100 / parseInt(this.total)) * parseInt(used) );
},
setUsage: function(used){
var t = this;
if( used || used === 0){
this.percentage = this.getPercentage( used );
}
//*******ANIMATION BLOCK*********//
if(this.CSStransition){
this.bar[0].style.width = this.percentage+'%';
this.bar.one('transitionend',transitionEnd);
} else {
this.bar.animate({
width: t.percentage+'%'
}, t.opts.speed, transitionEnd);
}
//*******ANIMATION BLOCK*********//
function transitionEnd(){
t.ele[ t.percentage > 20 ? 'removeClass' : 'addClass']('warn');
}
this.remaining.text(this.getRemaining());
},
getRemaining: function(){
if( this.total.match(/unlimited/i) ){
return 'unlimited';
}
return (~~this.total - ~~this.used) + (this.name === 'data' ? 'Mb' : '') + ' left';
}
};
专注于动画块,有什么建议吗?
我需要以某种方式强制动画继续,这是我理解不可能的。但由于显示器的性质,我无法承受动画在滚动时暂停。
在这里拍摄不可能的事情,但有没有办法继续触摸动画拖动?