你可以这样做要求完成动画。例如:
http://jsbin.com/adokiz/2
我们做的是这样的:
$(document).ready(function() {
var running = false;
$('img').on('click', function(event) {
if (running) return;
running = true;
console.log(this);
$(this).animate({top: '400px'}, function() {
$(this).css({top: 0});
running = false;
});
});
});
使用命名的全局变量running
可以防止多次点击来自在同一时间被认可。这与您的代码不完全相同,但您可以轻松调整它。
另一种方式来做到这一点应该是甚至被执行两次更耐是使用jQuery one
结合它像这样:
$(document).ready(function() {
var animation;
var binding = function() {
$('img').one('click', animation);
};
animation = function(event) {
$(event.target).animate({top: '400px'}, function() {
$(event.target).css({top: 0});
binding();
});
};
binding();
});
演示:http://jsbin.com/adokiz/3
当你说按钮,你的意思是被点击的图像?或者你还有一个单独的按钮? – philreed 2013-02-12 22:15:28
..工作很好:)感谢您的帮助.... – svk 2013-02-12 22:19:57