2013-07-30 1 views
0

В этом примере я в основном хочу только сделать элемент затуманенным, если у них включен JavaScript. Я делаю это, добавляя класс под названием trancent в файле .js. Однако при проверке обратной совместимости IE 7 и 8 по какой-то причине, даже если они добавляют класс, стилизация не работает. Они также успешно удаляют другой класс в одном файле. Это не проблема в любом другом браузере или даже более поздних версиях IE.IE 7 и 8, не добавляющие класс

Может ли кто-нибудь расшифровать, почему IE 7 и 8 делают это?

(function(){ 
$('.contentdivbody .lightblue').removeClass('invis'); 
$('.nonejavainfo').slideUp(0); 

logolist = $('.logolist li img'); 
masssarea = $('#maparea .mapele'); 

logolist.addClass('trancent'); 
masssarea.addClass('trancent'); 
$('#maparea .mapelerings').addClass('invis'); 

$("a.newwindow").click(function() { 
     window.open(this.href); 
     return false; 
}); 
})(); 

CSS

.trancent{ opacity: 0.7; }

ответ

1

IE7 и IE8 не поддерживают opacity стиль, поэтому я думаю, что JQuery добавляет класс очень хорошо, но это не делает ничего, потому что, как что касается IE, там нет стилей.

Если вам необходимо поддерживать прозрачность в старых версиях IE, добавьте следующие стили к классу:

-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)"; /* IE8 */ 
filter: alpha(opacity=75); /* IE6, IE7 */ 

Надежда, что помогает.

+0

Да, я понял, что он добавлял класс перед отправкой вопроса, но забыл перепечатать вопрос. –

+0

И да, это была именно проблема, –

+0

Спасибо за помощь, и мне нужно будет помнить, что я нахожу, что вставляю сообщения: - /. EDIT И я только понял, что есть кнопка редактирования: - /: -/ –