﻿/// <reference path='Libraries/jquery-1.4.1-vsdoc.js' />

if (!Array.prototype.indexOf) {
    Array.prototype.indexOf = function (obj) {
        for (var i = 0; i < this.length; i++) {
            if (this[i] == obj) {
                return i;
            }
        }
        return -1;
    }
}

function imageHover(img, hover) {
    var newSrc;
    if (hover)
        newSrc = img.attr('src').replace('_off.', '_on.');
    else
        newSrc = img.attr('src').replace('_on.', '_off.');
    img.attr('src', newSrc);
}

function preloadImage(src) {
    image = new Image();
    image.src = src;
}

var preloadedImages = [];
var hoveringTypes = 'img.jshover, input[type="image"].jshover';
var hoveringImages = $(hoveringTypes);

hoveringImages.each(function (index) {
    imageHover($(this), false);

    var src = $(this).attr('src').replace('_off.', '_on.');
    if(preloadedImages.indexOf(src) == -1) {
        preloadImage(src);
        preloadedImages.push(src);
    }
});

hoveringImages.live('mouseover', function () {
    imageHover($(this), true);
});

hoveringImages.live('mouseout', function () {
    imageHover($(this), false);
});
