			jQuery.fn.onImagesLoaded = function(_cb) { 
			  return this.each(function() {
			 
				var jQueryimgs = (this.tagName.toLowerCase()==='img')?jQuery(this):jQuery('img',this),
					_cont = this,
						i = 0,
				_done=function() {
				  if( typeof _cb === 'function' ) _cb(_cont);
				};
			 
				if( jQueryimgs.length ) {
				  jQueryimgs.each(function() {
					var _img = this,
					_checki=function(e) {
					  if((_img.complete) || (_img.readyState=='complete'&&e.type=='readystatechange') )
					  {
						if( ++i===jQueryimgs.length ) _done();
					  }
					  else if( _img.readyState === undefined ) // dont for IE
					  {
						jQuery(_img).attr('src',jQuery(_img).attr('src')); // re-fire load event
					  }
					}; // _checki \\
			 
					jQuery(_img).bind('load readystatechange', function(e){_checki(e);});
					_checki({type:'readystatechange'}); // bind to 'load' event...
				  });
				} else _done();
			  });
			};
