我正在使用jQuery(版本1.6.2)生成一个适用于FF3 +,IE9以及当前版本的Chrome和Opera(仍然无法单独找到旧版本)的动画。
在独立版本的IE7和IE8上,jQuery库似乎无法运行,在使用FireBug检查后,JScript返回错误:Invalid argument: jquery-latest.js, line 18 character 20327
,对应于:?a.elem.style[a.prop]=
。
我认为这是独立版IE的问题,但我目前无法检查。我使用的独立包是http://utilu.com IE集合。
我也尝试添加:<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
,但没有成功。
jQuery代码:
$(document).ready(function(){
$("nav menu a").click(function(){
var oArticle = $("#" + $(this).attr("class"));
oArticle.fadeIn({
duration: 2500,
queue: false
}).animate({
width: "500px",
height: "auto"
}, {
duration: 2500,
queue: false,
easing: 'linear',
complete: function(){
$("header").css("height", oArticle.css("height"));
}
});
return false;
});
});
以及相应的标记:
<nav>
<menu>
<li><a href="about.htm" class="profile">Profile</a></li>
<li><a href="contact.htm" class="contact">Contact</a></li>
<li><a href="projects.htm" class="projects">Project Gallery</a></li>
<li><a href="resources.htm" class="resources">Resources</a></li>
</menu>
</nav>
除了上面的脚本之外,没有其他JavaScript代码从该页面调用,除了jQuery库(http://code.jquery.com/jquery-latest.pack.js
)。
答案 0 :(得分:1)
.animate({
width: "500px",
height: "auto"
}
您无法动画为auto
。
这样做会导致IE7 / IE8 I just tested it中出错。
如果您确实需要设置auto
动画,则必须使用变通方法,例如answer here。