在jQuery .on()方法上使用多个事件处理程序

时间:2011-11-26 15:36:38

标签: jquery

在jQuery .on()方法上有多个事件处理程序,如下所示:

$("div.test").on({

  mousemove: function(e){
    //do something
  },

  mouseenter: function(){
    //do something
  },

  mouseleave: function(){
    //do something
  }

});

是否可以从.on()方法外部调用mousemove函数?

类似的东西:

function myFunction(e){
   //do something
};

$("div.test").on({

  mousemove: myFunction(e);

  mouseenter: function(){
    //do something
  },

  mouseleave: function(){
    //do something
  }

});

3 个答案:

答案 0 :(得分:1)

我不确定我理解你的问题,但试试这个:

function myFunction(e){
   //do something
};

$("div.test").on({

  mousemove: myFunction,

  mouseenter: function(){
    //do something
  },

  mouseleave: function(){
    //do something
  }

});

答案 1 :(得分:1)

您只需要传递函数引用,而不是调用。

$("div.test").on({

  mousemove: myFunction,
  .
  .
  .

答案 2 :(得分:0)

只需从(e)声明中的myFunction末尾删除on()

function myFunction(e){
  //do something
};

$("div.test").on({

  mousemove: myFunction,

  mouseenter: function(){
    //do something
  },

  mouseleave: function(){
    //do something
  }

});

事件(e)将隐式传递给myFunction