修改主题的时候,想要实现一个按钮点击后,能够来回循环执行两个不同的函数,一开始相同 jQuery 的 toggle(),但是达不到想要的效果,所以改用自定义方式
(function($) {
$.fn.clickToggle = function(func1, func2) {
var funcs = [func1, func2];
this.data('toggleclicked', 0);
this.click(function() {
var data = $(this).data();
var tc = data.toggleclicked;
$.proxy(funcs[tc], this)();
data.toggleclicked = (tc + 1) % 2;
});
return this;
};
}(jQuery));
使用时直接调用并传入两个函数即可,如:
$('.sidebar-toggle').clickToggle(
function() {
$(".icon-sidebar-toggle").css({
right: "150px"
});
},
function() {
$(".icon-sidebar-toggle").css({
right: "6px"
});
}
);