博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jquery event的简单使用
阅读量:6828 次
发布时间:2019-06-26

本文共 774 字,大约阅读时间需要 2 分钟。

hot3.png

最近在开发树型控件时,希望使用标准的jquery的事件来处理:执行前,执行后的事件,以前这块做得较少,差了一下文档,记录如下:

发送前处理

var e = $.Event('beforeAction');el.trigger(e);if (e.isDefaultPrevented()) return false;

上面的代码先创建事件,然后发出事件,再判断事件有没有取消。如果在处理中,用户想要中止操作,可以在事件处理函数中执行:

e.preventDefault()

来中止处理。

发送后处理

el.trigger({type:'afterAction', message:'some message'})

这里为什么没有使用 $.Event 来创建事件对象呢?因为我们不需要处理后还可以中止,所以就不需要通过事件对象还判断是否中止了。

如何传递更多参数

有时在trigger时想要传递一些额外的参数给事件处理函数,可以:

trigger(e, data)trigger(e, [data1, data2, ...])

第一种用法是只传递一个参数,第二种是传递多个参数,这里要使用数组。这样在定义事件处理函数中也要把对应的参数加上,如:

function handler(e, data)function handler(e, data1, data2)

更详细的还是要看jquery的文档

【更新 2013/03/02】

在使用过程中发现, trigger 发出的消息并不是我真的创建的Event对象。它会添加很多其它的属性,同时把我原始的对象放在 originalEvent 属性中。具体的可以看 中关于 OtherProperties 的描述。

转载于:https://my.oschina.net/limodou/blog/110899

你可能感兴趣的文章
linux系统强制踢掉其它登录用户
查看>>
用TestSuite管理Junit单元测试用例
查看>>
WAMP配置
查看>>
14.Ez***客户端是软件
查看>>
2011数据中心大会:构建新一代的数据中心
查看>>
我的友情链接
查看>>
centos安装LAMP环境时访问本地MYSQL数据库错误
查看>>
RotateAnimation的构造方法和ListView的一些认识
查看>>
[转]Struts2+Spring3+Hibernate4+Maven+EasyUI整合入门视频+视
查看>>
KVM虚拟化主机安装
查看>>
内部命令vs外部命令
查看>>
CenOS5 x86下配置Nginx+keepalived主从负载均衡
查看>>
named启动脚本修改
查看>>
RHEL6.5的安装过程
查看>>
通过vftps和虚拟帐号增强ftp的安全性
查看>>
创客集结号:3D打印的材料
查看>>
Ceph
查看>>
架构的“一小步”,业务的一大步
查看>>
迭代器,生成器
查看>>
如何用二分法在有序数组中找到你想要的数字
查看>>