尝试:示例
$("#right").click(function () {
if (!$(".block").hasClass("Moved")) {
$(".block").animate({
"left": "+100px"
}, "slow").fadeTo("slow", 0.33).addClass("Moved");
} else {
$(".block").animate({
"left": "+50px"
}, "slow").fadeTo("slow", 0.99).removeClass("Moved");
}
});
另外一个选项:
使用这样的小插件;
(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));
并像在页面中的任何位置一样使用它:
$("#right").clickToggle(function () {
$(".block").animate({
"left": "+100px"
}, "slow").fadeTo("slow", 0.33);
}, function () {
$(".block").animate({
"left": "+50px"
}, "slow").fadeTo("slow", 0.99);;
});