Jquery的.delay()延迟时间是否是客观准确的?


例如我在一台CPU已跑到100%的非常慢机器上的浏览器使用jquery.delay(10000)与在一台0load高端机器浏览器上调用,消耗的自然时间是一样的吗?
我是否可以信任delay设置的时间?
delay延迟内部是否是使用setTimeout?有没有什么特殊的保证时间准确的逻辑?

Web开发 JavaScript

終わりD唄 12 years, 2 months ago

以下是JQuery中关于.delay()的源码实现,只不过是加入了队列机制,但终究都是采用setTimeout(),所以当然可以用啊。

   
  delay: function( time, type ) {
  
time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;
type = type || "fx";

return this.queue( type, function( next, hooks ) {
var timeout = setTimeout( next, time );
hooks.stop = function() {
clearTimeout( timeout );
};
});
},

孤高的黑狼鸟 answered 12 years, 2 months ago

Your Answer