42 lines
1.2 KiB
JavaScript
Executable File
42 lines
1.2 KiB
JavaScript
Executable File
// (function($) {
|
|
// var cache = [];
|
|
// // Arguments are image paths relative to the current page.
|
|
// $.preLoadImages = function() {
|
|
// var args_len = arguments.length;
|
|
// for (var i = args_len; i--;) {
|
|
// var cacheImage = document.createElement('img');
|
|
// cacheImage.src = arguments[i];
|
|
// cache.push(cacheImage);
|
|
// }
|
|
// }
|
|
// })(jQuery)
|
|
|
|
|
|
(function($) {
|
|
$.preloadimages = function (arr){
|
|
var newimages=[], loadedimages=0
|
|
var postaction=function(){}
|
|
var arr=(typeof arr!="object")? [arr] : arr
|
|
function imageloadpost(){
|
|
loadedimages++
|
|
if (loadedimages==arr.length){
|
|
postaction(newimages) //call postaction and pass in newimages array as parameter
|
|
}
|
|
}
|
|
for (var i=0; i<arr.length; i++){
|
|
newimages[i]=new Image()
|
|
newimages[i].src=arr[i]
|
|
newimages[i].onload=function(){
|
|
imageloadpost()
|
|
}
|
|
newimages[i].onerror=function(){
|
|
imageloadpost()
|
|
}
|
|
}
|
|
return { //return blank object with done() method
|
|
done:function(f){
|
|
postaction=f || postaction //remember user defined callback functions to be called when images load
|
|
}
|
|
}
|
|
}
|
|
})(jQuery) |