代码之家  ›  专栏  ›  技术社区  ›  mkoryak

jquery绑定多个事件并传递数据

  •  1
  • mkoryak  · 技术社区  · 14 年前

    我知道我们可以在1.4中找到:

    $("a").bind({
      click : clickFn,
      mouseover: mouseFn
    });
    

    这很好,我想使用它,但似乎没有办法将额外的数据传递给以这种方式绑定的事件,这需要按“旧方法”进行:

    $("a").bind("click", {"some":"data"}, clickFn);
    

    问题: 如何将额外的数据传递给事件回调,并同时在一个绑定中绑定多个事件?

    1 回复  |  直到 14 年前
        1
  •  3
  •   Gabriele Petrioli    14 年前

    你可以做点什么

    $("a").bind({
      click : function() { clickFn.apply(this, [param1,param2,..]); },
      mouseover: function() { mouseFn.apply(this, [param1,param2,..]); }
    });
    

    尽管您需要使函数以这种方式接受参数。

    [更新以维护上下文]