0

我正在将 Jquery 1.3.2 用于需要它在 IE 7/8 中运行的脚本。

我为修改 tabSlideOUT v1.3 而编写的以下代码

By William Paoli: http://wpaoli.building58.com is causing a conflict and throwing an "Invalid Argument" error in jquery.

<script type="text/javascript">
$(document).ready(function() {
    $("div#slidetab_1.slide-out-div a.handle").click(function () {
        $("div#slidetab_2.slide-out-div").toggleClass("slide-height", 250) ;
    });
    $("div#slidetab_2.slide-out-div a.handle").click(function () {
        $("div#slidetab_2.slide-out-div.tab2.slide-height").toggleClass("slide-height"); 
    });
});
</script>

似乎是 toggleClass 函数导致了错误。有谁知道另一种编码方式,所以我不必使用切换?

很抱歉,它看起来很模糊,但我在 JS Fiddle 上发布示例时遇到了麻烦。

我所需要的只是 toggleClass 的替代方法

提前致谢

干杯

4

1 回答 1

1

问题是你250作为第二个参数传递......它应该在你的代码中做什么?

文档中:

switch一个布尔值(不仅仅是真/假),以确定是否应该添加或删除该类。

它似乎没有任何目的,所以我建议将其删除。

更新:查看jQuery 源代码后,传递250不应引发该错误。不过我建议删除它并测试它。如果它不起作用,您必须提供更多信息(确切地抛出错误的位置等)。

或者,您可以使用此函数来切换类:

function toggleClass($element, cls) {
    $element[$element.hasClass(cls) ? 'removeClass' : 'addClass'](cls);
}
于 2011-08-16T23:26:19.687 回答