﻿
// позволяет IE корректно обрабатывать прозрачность png-файлов
// пример исполльзования: 
//	в описани стилей элемента, которому нужно добавить обработку png-прозрачности в IE
//	добавить правило filter: expression( fixPNG(this, sizingMethod ) )
// - sizingMethod:
//					"scale"	- маштабируется таким образом, чтобы её границы совпали с границами элемента-контейнера
//					"crop"	- картинка урезается границами элемента контейнера
//					"image" - увеличивает или уменьшает размеры контейнера до совпадения с размерами картинки 
function fixPNGCrop( element ) {
	fixPNGMode( element, 'crop' );
}
function fixPNGScale( element ) {
	fixPNGMode( element, 'scale' );
}
function fixPNG( element ) {
	fixPNGMode( element, 'image' )
}
function fixPNGMode( element, sizingMethod )
{
	if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent))
	{
		var src;
		
		if (element.tagName=='IMG')
		{
			if (/\.png$/.test(element.src))
			{
				src = element.src;
				element.src = "images/spacer.gif";
			}
		}
		else
		{
			src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i)
			if (src)
			{
				src = src[1];
	
				element.runtimeStyle.backgroundImage = "none";
			}
		}
		
		if (src) 
			element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader( src='" + src + "', sizingMethod='" + sizingMethod + "')";
	}
}
