function addLoadListener(fn) {
	if (typeof window.addEventListener != 'undefined') {
		window.addEventListener('load', fn, false);
	} else if (typeof document.addEventListener != 'undefined')	{
		document.addEventListener('load', fn, false);
	} else if (typeof window.attachEvent != 'undefined') {
		window.attachEvent('onload', fn);
	} else {
		return false;
	}
	return true;
};

function attachEventListener(target, eventType, functionRef, capture) {
    if (typeof target.addEventListener != "undefined") {
        target.addEventListener(eventType, functionRef, capture);
    } else if (typeof target.attachEvent != "undefined") {
        target.attachEvent("on" + eventType, functionRef);
    } else {
        return false;
    }
    return true;
};

function buttons() {
    var inputs = document.getElementsByTagName("input");
    var i=0;
    for (i=0; i<inputs.length; i++) {
        if(inputs[i].getAttribute('type') == 'image') {
			var image = inputs[i];
            image.offImage = new Image();
            image.offImage.src = image.src;
            image.onImage = new Image();
            image.onImage.imageElement = image;
            if (navigator.userAgent.toLowerCase().indexOf('safari') != - 1) {
               image.onmouseover = function() { this.src = this.onImage.src; };
			   image.onfocus = function() { this.src = this.onImage.src; };
               image.onmouseout = function() { this.src = this.offImage.src; };
			   image.onblur = function() { this.src = this.offImage.src; };
            } else {
               image.onImage.onload = function() {
                  this.imageElement.onmouseover = function() { this.src = this.onImage.src; };
				  this.imageElement.onfocus = function() { this.src = this.onImage.src; };
                  this.imageElement.onmouseout = function() { this.src = this.offImage.src; };
				  this.imageElement.onblur = function() { this.src = this.offImage.src; };
               };
            }
            image.onImage.src = image.src.replace(/-off\./, '-on.');
        }
    }
}

buttons();
attachEventListener(window, "load", buttons, false);