jQuery 1.4.2 - 是$("#foo").隐藏("正常")破碎还是我疯了?

kar*_*m79 6 jquery

有谁知道为什么.hide("normal")似乎没有在jQuery 1.4.2中工作?这是一个错误,它已被删除或我只是疯了吗?我已设法使用几种不同的方案复制它.试试这个:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.0/jquery-ui.min.js"></script>

<script type="text/javascript">
    $(document).ready(function() {
        $("button").click(function() {
             $("div.test").hide("normal");
        });
    });

</script>
</head>

<body>
    <div class="test">Hello this is a test</div>
    <button>Click</button>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Nic*_*ver 15

问题是类选择器:.text!=class="test"

我已经做了100多次,用同样的话:)

更改为:$("div.test").hide("normal");修复.


更新: 似乎jQuery UI 1.8是一个问题,打破"normal"动画速度.

这是来自jQuery UI论坛:

感谢您指出了这一点.Normal实际上从来都不是一个有效的速度选项,它是来自无效文档的神话(过去也存在于jQuery核心文档中).它工作的唯一原因是因为无效值回落到默认速度.

所以看起来至少jQuery UI团队的这个成员并不认为这是一个突破性的变化,我强烈不同意并希望在下次更新时这是相反的.


Mat*_*att 6

工作对我来说 ......你在包装:

$("button").click(function() {
     $("div.test").hide("normal");
});
Run Code Online (Sandbox Code Playgroud)

$(document).ready()不是吗?