IE上的jQuery fadeOut(“慢”)问题

时间:2011-08-24 06:43:26

标签: javascript jquery css cross-browser fadeout

我有一个<span>标签,我使用jQuery

淡入/淡出
<span id="checkbox_err">Some text Some text Some text Some text Some text Some text </span>

此范围有适用的背景。

background-color: #EEAAAA;

我使用

淡出这个范围
$("span#checkbox_err").fadeOut("slow");

现在这在Firefox中完美运行,但是在IE中,我得到了一个奇怪的问题(虽然不一致),即在几个ocassions上,跨度不淡出,即使它里面的文字是隐藏的......所以我看到了空白框与背景颜色..

奇怪的是,当我在那个点检查span元素时,它会显示“display:none”。

如果这是一个已知问题,请告诉我你是否有相同的解决办法(APART来自非常明显的fadeOut(“快速”);)

2 个答案:

答案 0 :(得分:1)

您应该使用fadeTo而不是使用fadeOut。

$("span#checkbox_err").fadeTo('slow',0);

现在让我们更新它以确保它在转换结束时消失了

$("span#checkbox_err").fadeTo('slow',0, function() {
    $(this).hide();
});

答案 1 :(得分:-1)

无需更改HTML和jQuery。只需在span的css中添加以下内容即可,它适用于IE 7,8,9

background-color: #EEAAAA;display:block;

请在此处查看结果:http://jsfiddle.net/prsQd/

jQuery fadeOut()命令实际上在元素上应用“disaply:none”css样式,而fadeIn()命令应用“display:block”css样式。