2011-07-25 3 views
1

Я получаю эту проводную сглаженную границу текста и изображения в IE, только вы можете видеть на изображении.Проблема непрозрачности jQuery, т. Е.

enter image description here

Как вы можете видеть в JavaScript Я использую JQuery и CSS (непрозрачности).

Это мой HTML:

<div id="banner-container"> 
    <div id="banner-0" class="banner"> 
     <div class="banner-text"> 
      <div class="banner-text-heading-3">0 Lorem ipsum dolor si</div> 
      <div class="banner-text-text-3">0 Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea <br /><b>Learn more</b></div> 
     </div> 
     <div class="banner-image"><img src="images/banner-img.png" border="0" /></div> 
    </div> 
    <div id="banner-1" class="banner"> 
     <div class="banner-text"> 
      <div class="banner-text-heading-3">1 Lorem ipsum dolor si</div> 
      <div class="banner-text-text-3">1 Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea <br /><b>Learn more</b></div> 
     </div> 
     <div class="banner-image"><img src="images/banner-img1.png" border="0" /></div> 
    </div> 
    <div id="banner-2" class="banner"> 
     <div class="banner-text"> 
      <div class="banner-text-heading-3">2 Lorem ipsum dolor si</div> 
      <div class="banner-text-text-3">2 Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea <br /><b>Learn more</b></div> 
     </div> 
     <div class="banner-image"><img src="images/banner-img2.png" border="0" /></div> 
    </div> 
</div>

JQuery код:


$(document).ready(function(){ 
    slide_logic(0,3,0); 
}); 
function slide_logic(slide,nof_slides,animation_duration) 
{ 
    for(i=0;i<nof_slides;i++) 
    { 
     if(i==slide) 
     { 
      $('#banner-'+i).animate({'opacity':'1'},animation_duration); 
      $('#banner-'+i+' .banner-text').animate({'opacity':'1'},animation_duration); 
     } 
     else 
     { 
      $('#banner-'+i).animate({'opacity':'0'},animation_duration); 
      $('#banner-'+i+' .banner-text').animate({'opacity':'0'},animation_duration); 
     } 
    } 
} 

Есть ли исправление для этого?

+1

"un-anti" == "" :) – Sergey

+0

:) Извините за это. –

+2

Поддержка непрозрачности в IE8 и ранее очень плохая. От этого не обойтись; он ошибочно и плохо реализован. JQuery может упростить его использование, но он не может исправить ошибки. – Spudley

ответ

2

Посмотрите на ответы здесь: jQuery fadeIn leaves text not anti-aliased in IE7

Может быть, это поможет. Оказывается, что это может быть ошибка IE (как обычно)

+0

+1, Спасибо за ваш ответ. Я добавил следующий код в обратном вызове animate if ($. Browser.msie) this.style.removeAttribute ('filter'); он исправляет проблему, когда не анимирует, но такую ​​же проблему при анимации. –

Смежные вопросы