從jQuery 1.8開始,.toggle()
實用程序函數已被棄用,並且我正在查看SO,無法使用快速片段來模擬其功能。我看了一個建議的解決方案here,但我覺得它太冗長了。用最小代碼模仿jQuery .toggle()?
我不知道我是否應該切換自定義類名並執行.on()
/.off()
,或者如果我應該跟蹤布爾值?
在我的腦海裏,我想我應該能夠做到這一切在一個單一的.on()
事件地圖...
已經有人在這裏做之前並且可以共享一個片段?
編輯
我必須說,這是一個有點刺激性,當人們投下來的問題,以便積極。是的,一些類似的片段在SO上,但這裏的問題是關於最小化代碼。舊的jQuery .toggle()
是一個不錯的簡單方法,我只是在尋找一些關於最佳方法的指針。
我想到的是:任何人都有想法如何避免使用全局變量來跟蹤我的點擊狀態?
g.toggler = 0;
$(document).on({
click : function(){
g.toggler++;
if(g.toggler%2==1){
console.log('forth');
} else {
console.log('back');
};
}
});
取決於你想切換的。 –
我會考慮類名突兀,喜歡'.data()'。上述範圍級別的布爾標誌具有更好的性能,但如果您有太多'.toggle',可能會失控。 –
jQuery有一些其他切換****函數可用於某些事情,否則通常的方法是使用標誌。 – adeneo