Jquery只执行一次函数

时间:2018-04-05 16:48:56

标签: javascript jquery

我有代码:

$(Page).on('click', '*', function(e)
{
    myFunction();
}

function myFunction(){//do something...}

我希望函数中的代码只进行一次,现在当我点击时,例如5次,函数myFunction()中的代码将被执行5次。我不想改变on('click', '*', ...

2 个答案:

答案 0 :(得分:1)

使用jQuery' one方法。

  

描述:将处理程序附加到元素的事件。每个事件类型的每个元素最多执行一次处理程序。

只需将.on更改为.one

$(Page).one('click', '*', function(e) {
  myFunction();
});

function myFunction() {
  // do something
}
one

Here's the documentation

答案 1 :(得分:0)

您可以使用 $.one

功能
$(Page).one('click', '*', function(e)
     myFunction();
});

或者,更好:

$(Page).one('click', '*', myFunction);

请注意将事件绑定到Page的DOM树中的整个元素集的事件委托。