2013-07-30 46 views
0

在这个例子中,我基本上只想让元素透明,如果他们已经启用了JavaScript。我通过在.js文件中添加名为'trancent'的类来完成此操作。但是,当检查向下兼容性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

感谢您的帮助,我必须记住击中输入帖子的评论: - /。编辑,我只是​​意识到有一个编辑按钮: - /: -/ –