【发布时间】:2012-01-18 16:32:55
【问题描述】:
<script type="text/javascript" src="css/jquery-1.7.1.js"></script>
<script type="text/javascript">
function slidedown(id){
$('#rerooftext').hide(0);
$('#inspectiontext').hide(0);
$('#remodelingtext').hide(0);
$('#restorationstext').hide(0);
$('#commtext').hide(0);
$('#painttext').hide(0);
setTimeout(300);
$('#'+id.id+'text').fadeToggle(1000);
};
</script>
这里我有一个隐藏几个包含文本的 div 的函数,然后使用 jquery 函数显示单击链接的 div。此代码在 chrome 中运行良好,但 Internet Explorer 不执行动画,当我单击链接时,它隐藏了当前 div,它是 reroof 但无法显示新 div,即代码 $('#'+id.id+ '文本').fadeToggle(1000);
任何想法为什么会发生这种情况?
【问题讨论】:
-
哪个版本的IE? 2.0? 6? 7?
-
函数是怎么调用的? HTML 是什么样的?
-
在我看来就像 'setTimeout(300);' 上的脚本错误所以下面的动画失败了。 IE 不像 Chrome 那样宽容。
-
另外,查看您的 html + css 会有所帮助,因为 IE 可能会遇到浮动错误或绝对/相对定位的元素。
-
你的settimeout用法不对,看这里:developer.mozilla.org/en/DOM/window.setTimeout 然后,你能不能先用$('#'+id.id+'text').show(),然后用$('# '+id.id+'text').show(1000) ?
标签: javascript jquery html