jQuery- .click()如何与作为参数传递的函数标识符一起使用?

Kameswaran ganesh
$('button').click(function(){ console.log('works'); });

当我单击所需的按钮时,这将输出“作品”。

但是,如果我将相同的代码打包在一个函数中,并在其上附加括号(通常调用一个函数)来调用它,如下所示:

function worker(){ console.log('works'); }
$('button').click(worker());

工人被开除,没有任何点击按钮但是如果我避开括号,就像

function worker(){ console.log('works'); }
$('button').click(worker);

我正在获得所需的功能。为什么点击处理程序会以这种方式运行?

埃文·贝克托尔

当您在不带括号的JavaScript中调用函数时,您正在做的就是分配实际的函数。这不会立即执行该功能。

括号的JavaScript中调用函数时,您将立即执行该函数并返回该函数的值。

话虽如此,如果您有一个函数本身返回了一个函数,则可以实际调用一个函数,其返回值将是另一个函数。一般不建议

为了解决您的评论:假设您编写以下语句:$('button').click(console.log('works'));结果将是,一旦页面被加载,“ works”将被打印到控制台。这是因为带有括号console.log()的函数被调用

但是,如果您执行以下方法:

var worksFunc = function() {console.log('works')};
$('button').click(worksFunc);

现在它将引用该函数以在click事件上执行

演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将jQuery .click()函数与单个元素一起使用

来自分类Dev

jQuery .load不能与函数参数一起使用

来自分类Dev

我如何使数组与jQuery函数一起使用?

来自分类Dev

以HTML中的ID作为标识符的jQuery“ Like”

来自分类Dev

jQuery .click()函数仅与$(window).load()一起使用一次

来自分类Dev

如何使此jQuery ajax函数与jQuery 1.12.x一起使用

来自分类Dev

使用非唯一标识符来查找与 jquery 的兄弟

来自分类Dev

将jQuery .html与回车符一起使用

来自分类Dev

如何使用jQuery不同地放置具有类标识符的每个元素?

来自分类Dev

如何在jQuery中使用变量正确替换标识符

来自分类Dev

如何重新编码我的jquery / javascript函数,使其更通用并且不需要唯一标识符?

来自分类Dev

如何在Ruby on Rails中将form.select与jquery .click()方法一起使用?

来自分类Dev

jquery 传递一个带有参数的 jquery 方法作为函数的参数

来自分类Dev

jQuery .load()函数不能与DataTables一起使用?

来自分类Dev

jQuery-意外的标识符

来自分类Dev

jQuery标识符名称限制

来自分类Dev

jQuery 意外标识符错误

来自分类Dev

使用“ if”作为参数标识符

来自分类Dev

使用参数作为标识符?

来自分类Dev

如何在Rails中将jQuery与Sunspot一起使用?

来自分类Dev

如何使jQuery.tablesorter与DocPad一起使用?

来自分类Dev

如何与Google一起使用jQuery建议查询

来自分类Dev

angular 2如何与jquery一起使用?

来自分类Dev

MVC5-如何使用jquery ajax将文件上传和模型一起传递给控制器

来自分类Dev

使jQuery与Turbolinks一起使用

来自分类Dev

仅JQuery与FormData一起使用?

来自分类Dev

jQuery preventDefault()无法与.on()一起使用

来自分类Dev

Phantom无法与JQuery一起使用

来自分类Dev

一起使用php和jquery

Related 相关文章

  1. 1

    将jQuery .click()函数与单个元素一起使用

  2. 2

    jQuery .load不能与函数参数一起使用

  3. 3

    我如何使数组与jQuery函数一起使用?

  4. 4

    以HTML中的ID作为标识符的jQuery“ Like”

  5. 5

    jQuery .click()函数仅与$(window).load()一起使用一次

  6. 6

    如何使此jQuery ajax函数与jQuery 1.12.x一起使用

  7. 7

    使用非唯一标识符来查找与 jquery 的兄弟

  8. 8

    将jQuery .html与回车符一起使用

  9. 9

    如何使用jQuery不同地放置具有类标识符的每个元素?

  10. 10

    如何在jQuery中使用变量正确替换标识符

  11. 11

    如何重新编码我的jquery / javascript函数,使其更通用并且不需要唯一标识符?

  12. 12

    如何在Ruby on Rails中将form.select与jquery .click()方法一起使用?

  13. 13

    jquery 传递一个带有参数的 jquery 方法作为函数的参数

  14. 14

    jQuery .load()函数不能与DataTables一起使用?

  15. 15

    jQuery-意外的标识符

  16. 16

    jQuery标识符名称限制

  17. 17

    jQuery 意外标识符错误

  18. 18

    使用“ if”作为参数标识符

  19. 19

    使用参数作为标识符?

  20. 20

    如何在Rails中将jQuery与Sunspot一起使用?

  21. 21

    如何使jQuery.tablesorter与DocPad一起使用?

  22. 22

    如何与Google一起使用jQuery建议查询

  23. 23

    angular 2如何与jquery一起使用?

  24. 24

    MVC5-如何使用jquery ajax将文件上传和模型一起传递给控制器

  25. 25

    使jQuery与Turbolinks一起使用

  26. 26

    仅JQuery与FormData一起使用?

  27. 27

    jQuery preventDefault()无法与.on()一起使用

  28. 28

    Phantom无法与JQuery一起使用

  29. 29

    一起使用php和jquery

热门标签

归档