我有一个按钮,可以在页面上移动div,但我希望按钮只移动一次。如果用户现在一直点击按钮,则div会继续朝同一方向移动。
答案 0 :(得分:1)
简单而通用的方法可能只是设置一个标志。
var box_can_move = true;
$('button_id').on('click', function(event, element){
if(box_can_move){
box_can_move = false;
//move box;
}
});
正如clockworkgeek的评论所提到的那样,拥有一个标志的一大优势是能够直接操作和检查状态(盒子已移动或不移动),而不将其与事件处理逻辑耦合。
答案 1 :(得分:0)
如果您有能力使用jQuery,使用one()
方法很简单:
$('yourButtonId').one('click',
function(event)
{
alert('This will only execute once.');
});
答案 2 :(得分:0)
试试吧
$('button_id').on('click', function(event, element){
new Effect.Move('div', {x: 300});
element.stopObserving();
});