【问题标题】:passing event trigger as function arguement with jquery .on()使用 jquery .on() 将事件触发器作为函数参数传递
【发布时间】:2014-08-15 06:33:41
【问题描述】:

我有一行代码可以在点击某些<td>s 时触发一个函数:

$("#grid .square").on( "click", move(e) );

它触发了函数,但它说e 未定义。我怎样才能让它将触发事件的元素作为参数传递?

如果.on(),有没有办法在其他用途​​中做到这一点?

类似:

$( document ).on( "click", "#grid .square", move(e) );

【问题讨论】:

    标签: javascript jquery variables arguments


    【解决方案1】:

    您可以绑定一个匿名函数并将 eventData 参数传递给click 函数。
    您确定不知道匿名?

    事件数据
    类型:对象
    包含将传递给事件处理程序的数据的对象。

    $("#grid").on('click',{anon:'PEOPLE POWER\nKNOWLEDGE IS POWER'}, function(event){
        move(event.data);
    });
    

    jsfiddle

    【讨论】:

    • 我确实知道匿名函数,而且我确实想到了这一点,但它似乎有点倒退。无论如何它不起作用。
    • @tryingToGetProgrammingStraight 我已经更新了我的答案,我希望这能更清楚:)
    • 我需要类似this 的东西。 (这不起作用)
    • @tryingToGetProgrammingStraight 只需写this 而不是event like this
    • 感谢您的帮助,在我看到您的评论之前,我已经使用 $("#grid .square").on("click",function(event){move(event.target);});
    猜你喜欢
    • 2014-08-07
    • 1970-01-01
    • 2010-10-04
    • 1970-01-01
    • 2013-01-27
    • 1970-01-01
    • 2012-11-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多