;(function($){ $.fn.rollover = function(options) { var opts = $.extend({}, $.fn.rollover.defaults, options); var _ua = (function(){ return { ltIE6:typeof window.addEventListener == "undefined" && typeof document.documentElement.style.maxHeight == "undefined", ltIE7:typeof window.addEventListener == "undefined" && typeof document.querySelectorAll == "undefined", ltIE8:typeof window.addEventListener == "undefined" && typeof document.getElementsByClassName == "undefined" } })(); if(_ua.ltIE6){ $(opts.ie6FuncClass).each(function(){ var self = $(this); var width = self.width(); var height = self.height(); $(this) .data("src", $(this).attr("src")) .attr("src", "/common/images/transparent.gif") .css("filter", "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+$(this).data("src")+"', sizingMethod='scale')"); if($(this).is("input[type=image]")){ $(this).css({'width':width,'height':height}); }; }).mouseover(function(){ $(this).css("filter", "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+$(this).data("src").replace(/^(.+)(\.[a-z]+)$/, '$1' + opts.overname + '$2')+"', sizingMethod='scale')"); }).mouseout(function(){ $(this).css("filter", "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+$(this).data("src")+"', sizingMethod='scale')"); }); $(opts.roFuncClass).each(function(){ var self = $(this); var imgChanger = function (elm, a_str1, a_str2){ elm.attr('src', self.attr('src').replace(new RegExp('^(\.+)' + a_str1 + '(\\.[a-z]+)$'), '$1' + a_str2 + '$2')); } self.mouseover(function(){ imgChanger(self, '', opts.overname); }) .mouseout(function(){ imgChanger(self, opts.overname, ''); }) .each(function(){ imgChanger($(''), '', opts.overname); }); }); }else{ $(opts.roFuncClass).each(function(){ var self = $(this); var imgChanger = function (elm, a_str1, a_str2){ elm.attr('src', self.attr('src').replace(new RegExp('^(\.+)' + a_str1 + '(\\.[a-z]+)$'), '$1' + a_str2 + '$2')); } self.mouseover(function(){ imgChanger(self, '', opts.overname); }) .mouseout(function(){ imgChanger(self, opts.overname, ''); }) .each(function(){ imgChanger($(''), '', opts.overname); }); }); }; }; $.fn.rollover.defaults = { overname: '_ov', ie6FuncClass: 'img.rollover.fixPngOver,input[type=image].rollover.fixPngOver', roFuncClass: 'img.rollover,input[type=image].rollover' }; })(jQuery); $(function() { $('img,input').rollover({ overname: '_on', ie6FuncClass: 'img.rollover.fixPngOver,input[type=image].rollover.fixPngOver', roFuncClass: 'img.rollover,input[type=image].rollover' }); });