2011-08-16 109 views
0

我正在使用Jquery 1.3.2的腳本,需要它在IE 7/8中運行。jQuery 1.3.2衝突

下面的代碼我做了修改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小提琴的例子。

所有我需要的是提前toggleClass

感謝的另一種方法

乾杯

回答

1

的問題是,你通過250作爲第二個參數...什麼是它應該在做你的碼?

documentation

開關布爾(不只是truthy/falsy)值,以確定該類是否應該被添加或移除。

它似乎沒有目的,所以我建議刪除它。

更新:經過看看jQuery source code,通過250不應該拋出該錯誤。不過,我建議刪除它並測試它。如果它不起作用,則必須提供更多信息(錯誤發生的位置等)。

或者,您可以使用此功能來切換類:

function toggleClass($element, cls) { 
    $element[$element.hasClass(cls) ? 'removeClass' : 'addClass'](cls); 
} 
+0

嗨菲利克斯,由於這是問題。 250是一個延遲,我看到只在jQuery 1.4中實現。非常感謝,歡呼聲 –

+0

@Clinton:甚至連jQuery 1.4都沒有實現(至少它不在文檔中)。也許它是jQuery UI的一個擴展。無論如何,我很高興這解決了它:)快樂的編碼! –

+0

嗨菲利克斯,看看這裏,http://api.jquery.com/delay/我在jQuery 1.5.2中使用了相同的代碼,它運行良好。再次感謝男士,乾杯 –