/***
* ie6png.js 解决ie6显示png的问题！
* IE6是支持PNG二进透明的（即要么全透明，要么不透明），但不支持png的 alpha 透明度（即半透明）
* 注意事项：
* 1、目录的pixel.gif透明图片作为png图片的替换,写在JavaScript中的pixel.gif路径根据需要调整
* 2、如果引入其他插件，例如fancybox、colorbox使用的png与ie6png.js有冲突，请用以下方法解决
* 3、以“-except.png”方式修改插件的所有png图片，例如 overlay.png => overlay-except.png

<!-[if lte IE 6]>
<script src="../js/ie6png.js" type="text/javascript"></script>
<![endif]->
*/


if (navigator.platform == "Win32" && navigator.appName == "Microsoft Internet Explorer" && window.attachEvent) {
	window.attachEvent("onload", enableAlphaImages);
}

function enableAlphaImages(){

	var rslt = navigator.appVersion.match(/MSIE (\d+\.\d+)/, '');
	var itsAllGood = (rslt != null && Number(rslt[1]) >= 5.5 && Number(rslt[1]) <= 6);
	if (itsAllGood) {
		for (var i=0; i<document.all.length; i++){
			var obj = document.all[i];
			var bg = obj.currentStyle.backgroundImage;
			var img = document.images[i];
			//引入js的页面，ie可以支持所有以“.png”为后缀的图片（img或者bg的形式），且过滤以“-except.png”方式命名的png
			if (bg && bg.match(/\.png/i) != null && bg.match(/\-except.png/i) == null) {
				var img = bg.substring(5,bg.length-2);
				var offset = obj.style["background-position"];
				//sizingMethod 参数说明
				//crop 裁剪图片到最合适对象的大小.
				//image 默认. 扩大或缩小对象的边界到图片最合适的大小.
				//scale 伸展或搜索图片以填充到对象的边界内.
				obj.style.filter ="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+img+"', sizingMethod='scale')";
				obj.style.backgroundImage = "url('js/pixel.gif')";
				obj.style["background-position"] = offset; // reapply
			} else if (img && img.src.match(/\.png/i) != null && bg.match(/\-except.png/i) == null) {
				var src = img.src;
				img.style.width = img.width + "px";
				img.style.height = img.height + "px";
				img.style.filter ="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+src+"', sizingMethod='crop')"
				img.src = "js/pixel.gif";
			}
		}
	}
}


