1

我正在尝试使用 opacity 属性和 jQuery animate 函数在我的水平选项卡菜单上实现类似点击的效果。这是执行此操作的代码:

$(document).ready(function() {      
    $("div#header > ul > li").click(function(event) {
        $(this).animate({opacity: 0.7} ,"fast", "", function() {
            $(this).animate({opacity: 1} ,"fast");
        });
    });
});

我的问题发生在 Internet Explorer 7 和 6 上。使用 opacity 属性制作动画时,我的水平菜单中的选项卡会丢失其初始位置。

点击这里访问我的网站。要查看问题,请单击“Contato”,然后单击“Início”(抱歉,它是用葡萄牙语编写的,但您应该能够看到错误发生)。注意,到目前为止,我只在 IE7/IE6 中检测到了这个问题!

先感谢您!

4

1 回答 1

1

我相信这只是一个涉及不透明度和 Internet Explorer 的错误,因为 IE 不支持不透明度。来自jQuery.support.opacity属性的jQuery 文档:

opacity:如果浏览器可以正确解释 opacity 样式属性,则等于 true(当前在 IE 中为 false,它使用 alpha 过滤器代替)。

为了避免该错误并仍然对兼容的浏览器产生影响,我将动画代码包装在以下条件中:

if ($.support.opacity) {
//animation code
}
于 2009-09-19T20:43:54.053 回答