Sha256: af0868e29dc367638f9f3762e7fc5dd45a57437d2552e949183e3bd27a9235e3
Contents?: true
Size: 899 Bytes
Versions: 30
Compression:
Stored size: 899 Bytes
Contents
pageflow.ProgressivePreload = function() { var run = null; function Run(page, maxPreloadedPages) { var cancelled = false; this.cancel = function() { cancelled = true; }; this.start = function() { preload(page, 0); }; function preload(page, counter) { $.when(page.page('preload'), tick()).then(function() { var nextPage = page.next('.page'); if (!cancelled && nextPage.length && counter < maxPreloadedPages) { preload(nextPage, counter + 1); } }); } // prevent stack level from becoming to deep function tick() { return new $.Deferred(function(deferred) { setTimeout(function() { deferred.resolve(); }, 1); }).promise(); } } this.start = function(page) { if (run) { run.cancel(); } run = new Run(page, 10); run.start(); }; };
Version data entries
30 entries across 30 versions & 1 rubygems