0

除了 click、mouseover 和 mouseleave,jQuery 的 on() 函数还有其他事件吗?或者这些事件是 on() 的主要用途吗?我找不到任何关于它的文档。

4

5 回答 5

5

您可以使用内置的 DOM 事件,也可以创建自己的事件。以下是一些内置 DOM 事件的列表(并非所有事件都发生在所有类型的对象上):

  • 点击
  • dblclick
  • 鼠标按下
  • mouseup
  • 鼠标移到
  • 鼠标移动
  • 鼠标移出
  • 按键
  • 键位
  • 按键
  • 加载
  • 卸下
  • 中止
  • 错误
  • 调整大小
  • 滚动
  • 选择
  • 改变
  • 提交
  • 重启
  • 重点
  • 模糊
  • 专注于
  • 聚焦
  • 触摸启动
  • 触摸端
  • 触摸移动
  • 触摸输入
  • 触摸离开
  • 触摸取消
  • 复制
  • 粘贴
  • 前切
  • 复制前
  • 前贴
  • 上下文菜单
  • 拖动启动
  • 拖拉机
  • 拖车
  • 拖离
  • 拖动端
  • 降低
  • 选择开始
  • 卸载前
  • 就绪状态改变
  • 印前
  • 后印

请参阅http://en.wikipedia.org/wiki/DOM_events以获得对其中大多数的体面描述。

于 2012-08-31T00:09:37.910 回答
1

on() 可以用于任何事情。它只是将事件委托给特定 DOM 元素的一种方式。

查看:http ://api.jquery.com/on/ 它将告诉您如何将绑定、实时、委托功能“转换”为新的“on”方法。

于 2012-08-30T23:57:25.603 回答
1

除了 Parris anwser你还可以做

$("#whatever").on("my.awesome_event", function(event, one, two, three){
    // stuff ...
});

$("#whatever").trigger("my.awesome_event", [1,2,3]);

在此示例中,变量one, two, three将具有值1, 2, 3

于 2012-08-31T00:02:21.327 回答
0

您可以使用任何内置事件(更改、聚焦、鼠标按下、模糊、触摸启动等),或者您可以创建自己的事件并绑定它们!

于 2012-08-30T23:58:35.607 回答
0

我对内置的 DOM 事件(例如更改、单击、模糊等)和我自己的类中的自定义事件使用 jQuery 的 on。对于我想要自定义事件的大多数课程,我会这样做:

this.events = $({});

然后我可以像这样绑定自定义事件:

foo.events.on("myCustomEvent", function(e) {
     // Do something
});

我可以这样触发:

this.events.triggerHandler("myCustomEvent");
于 2012-08-31T00:02:29.860 回答