(function(){
	var over = function(){
		var rollObj = getElementsByClassName("rollover");
		var pre = [];
		var imgObj = [];
		for(var i = 0, l = rollObj.length ; i < l; i++){
			if(rollObj[i].src && rollObj[i].src.match("_off.")){
				imgObj[imgObj.length] = rollObj[i];
			}else{
				var childImg = rollObj[i].getElementsByTagName("img");
				for(var j = 0, jl = childImg.length; j < jl; j++){
					if(childImg[j].src.match("_off.")){
						imgObj[imgObj.length] = childImg[j];
					}
				}
			}
		}
		for(var i = 0, l = imgObj.length; i < l; i++){
			pre[i] = document.createElement("img");
			pre[i].src = imgObj[i].src.replace("_off.","_on.");
			addEvent(imgObj[i],"mouseover",switchFn);
			addEvent(imgObj[i],"mouseout",switchFn);
		}
		function switchFn(){
			this.src = this.src.match("_off.") ? this.src.replace("_off.","_on.") : this.src.replace("_on." , "_off.");
		}
	}
	var addEvent = (function() {
		if ( window.addEventListener ) {
			return function(el, type, fn) {
				el.addEventListener(type, fn, false);
			};
		} else if ( window.attachEvent ) {
			return function(el, type, fn) {
				var f = function() {
					fn.call(el, window.event);
				};
				el.attachEvent("on"+type, f);
			};
		} else {
			return function(el, type, fn) {
				el["on"+type] = fn;
			};
		}
	})();
	function getElementsByClassName(className, pElement, tagName){
		var d = document, nodes = [], item;
		var cls, items = (pElement || d).getElementsByTagName((tagName || "*"));
		for(var i = 0, l = items.length; i < l; i++){
			item = items[i];
			if(item.className){
				cls = item.className.split(/\s+/);
				for(var k = 0, kl = cls.length; k < kl; k++){
					if(cls[k]==className){
					nodes[nodes.length] = item; break;
					}
				}
			}
		}
		return nodes.length > 0 ? nodes : null;
	}
	addEvent(window,"load",over);
})();
