var imgLoadedH=false;
var imgLoadedW=false;
var iodoffset=50;
var imagesLoading= new Array();

function CheckLoad(elem){
  var img=$(elem);
  if ($.inArray(img.attr('longdesc'),imagesLoading) == -1) {
    var p=$(window).height()+$(window).scrollTop();
    var w=$(window).width()+$(window).scrollLeft();
    var blnInRange=(img.offset().top<p+iodoffset&&img.offset().left<w+iodoffset);
    var blnVisible=(img.is(":visible"));
    if(blnInRange&&blnVisible){
      imagesLoading.push(img.attr('longdesc'));
      var pic=new Image();
      pic.onload=function(){
        $('[longdesc="' + img.attr('longdesc') + '"].img-ondemand').attr('src',img.attr('longdesc')).removeClass('img-ondemand');
        //img.attr('src',img.attr('longdesc')).removeClass('img-ondemand');
        imagesLoading.splice($.inArray(img.attr('longdesc'), 1));
      }
      pic.src=img.attr('longdesc');
    }
  }
}
function imgOndemand(visChange){
  var docHeight=$(document).height();
  var docWidth=$(document).width();
  if(!imgLoadedH||!imgLoadedW||visChange){
    $('img.img-ondemand').each(function(){CheckLoad(this)});
    $('input.img-ondemand').each(function(){CheckLoad(this)});
    imgLoadedH=($(window).height()+$(window).scrollTop())>=docHeight;
    imgLoadedW=($(window).width()+$(window).scrollLeft())>=docWidth;
  }
}
$(function(){imgOndemand()});
$(window).scroll(function(){imgOndemand()});
