jQuery(v1.6.2)在独立版本的IE7和IE8上返回错误

时间:2011-08-07 12:21:33

标签: javascript jquery internet-explorer-8 internet-explorer-7 firebug

我正在使用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)。

1 个答案:

答案 0 :(得分:1)

.animate({
    width: "500px",
    height: "auto"
}

您无法动画为auto

这样做会导致IE7 / IE8 I just tested it中出错。

如果您确实需要设置auto动画,则必须使用变通方法,例如answer here