Полупрозрачный PNG, jQuery и хренов ИЕ
Всем привет...
Поделитесь пожалуйсто решением... Значит вот в чём дело: Есть небольшой блок с фотками пользователей... фотка содержится в div-е, при наведение на одну из них срабатывает скрипт jQuery который немного увеличивает фотку (ну немного по другому...) $("#photoBox").fadeIn("fast"); теперь сама проблемма: этот самый div в качестве задника использует полупрозрачный PNG так вот когда скрипт меняет прозрачность всего div-а (в ИНТЕРНЕТ ЕКПЛОРЕРЕ), прозрачная область изображения становится чёрной. Как это можно исправить чтоб норм всё было? страница... http://www.marketing.md/users/public |
Для jQuery есть плагин pngFix/
доп. вообще, на мой взгляд самое элегантное решение fixpng.js
function fixPNG(element){
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='scale')";
}
}
}
Инициализация:
<!--[if lt IE 7]>
<script type="text/javascript" src="/fixpng.js"></script>
<style type="text/css">
.iePNG, img { filter:expression(fixPNG(this)); }
.iePNG a { position: relative; }
</style>
<![endif]-->
|
Попробуйте делать
.fadeIn() не самой картинке, а ее родительскому элементу |
| Часовой пояс GMT +3, время: 10:57. |