我做了一些jQuery的東西與toggle()
,我做了不同的動作,取決於當前div
是關閉還是顯示,我知道我可以很容易檢查是否hasClass()
或is(':visible')
爲我想做什麼,但我是思考也許有某種程度上我可以減少代碼量或只是做更有效率?比如用兩個函數來聲明toggle(),當它的顯示時它是這樣的,這是關閉的時候,這是可能的嗎?是否有任何申報toggle(),如果其開放做到這一點,關閉?
希望你明白我的意思嗎?
這樣或檢查jsfiddle
$('#click_me').on('click', function() {
$('#contain').toogle('blind', 300, function(){
alert('open');
}, function(){
alert('close');
});
});
不幸的是,'切換()'只支持一個回調。不過,您的策略是合理的:您可以檢查回調中的元素「(」:visible「)',並相應採取行動。 –
由於您正在尋找一種方法來減少代碼量,您可以通過將此行爲抽象爲自定義[jQuery插件函數]來實現這一點(http://docs.jquery.com/Plugins/Authoring# Getting_Started),您可以重複使用。 – lanzz
您正在混合切換效果方法和切換事件處理程序。 – undefined