javascript 主动派发事件总结


Posted in Javascript onAugust 09, 2011

1,dispatchEvent()
这是标准的触发事件方法,使用时需要先创建好事件对象。如下

var evt = document.createEvent('Event'); 
evt.initEvent('click',true,true); 
element.dispatchEvent(evt);

2,fireEvent()
这是IE旧版本中实现的触发事件方法,它无须创建事件对象,直接使用。如下
element.fireEvent('onclick');

注意:与attachEvent一样它需要加上“on”
一个兼容性所有浏览器的版本,如下
var dispatch = window.addEventListener ? 
function(el, type){ 
try{ 
var evt = document.createEvent('Event'); 
evt.initEvent(type,true,true); 
el.dispatchEvent(evt); 
}catch(e){alert(e)}; 
} : 
function(el, type){ 
try{ 
el.fireEvent('on'+type); 
}catch(e){alert(e)} 
};

上面封装的是一个触发事件的通用方法,即可以触发各种事件。浏览器还提供了特定方法来触发单独的事件。
4,click()
用来模拟用户点击,除Safari/Chrome不支持非input/button外,其它浏览器都支持。
5,form.submit()
模拟form提交,相对于点击input[type=submit]
6,input/textarea.select()
模拟用户选定文本。
7,focus()
模拟获取光标焦点
8,blur()
模拟失去光标焦点
9,input/textarea/select.change()
模拟文本或选项发生变化
10,自定义事件的派发实际就是获取该函数,然后调用

相关:
https://developer.mozilla.org/En/DOM/Element.dispatchEvent
http://msdn.microsoft.com/en-us/library/ms536423%28v=VS.85%29.aspx
https://developer.mozilla.org/en/DOM/Input.select 

Javascript 相关文章推荐
JQuery加载图片自适应固定大小的DIV
Sep 12 Javascript
下拉列表选择项的选中在不同浏览器中的兼容性问题探讨
Sep 18 Javascript
判断文档离浏览器顶部的距离的方法
Jan 08 Javascript
使用jQuery获得内容以及内容的属性
Feb 26 Javascript
jquery Easyui快速开发总结
Aug 20 Javascript
JavaScript基本数据类型及值类型和引用类型
Aug 25 Javascript
Angularjs实现带查找筛选功能的select下拉框示例代码
Oct 04 Javascript
Vue2.0 给Tab标签页和页面切换过渡添加样式的方法
Mar 13 Javascript
vue两个组件间值的传递或修改方式
Jul 04 Javascript
解决ele ui 表格表头太长问题的实现
Nov 13 Javascript
原生JS实现天气预报
Jun 16 Javascript
vue中div禁止点击事件的实现
Apr 02 Vue.js
JsDom 编程小结
Aug 09 #Javascript
IE 当eval遇上function的处理
Aug 09 #Javascript
取得窗口大小 兼容所有浏览器的js代码
Aug 09 #Javascript
Javascript实现的类似Google的Div拖动效果代码
Aug 09 #Javascript
基于Jquery的文字自动截取(提供源代码)
Aug 09 #Javascript
JQuery动态创建DOM、表单元素的实现代码
Aug 09 #Javascript
用JS判断IE版本的代码 超管用!
Aug 09 #Javascript
You might like
PHP脚本数据库功能详解(中)
2006/10/09 PHP
模拟flock实现文件锁定
2007/02/14 PHP
浅谈PHP强制类型转换,慎用!
2013/06/06 PHP
PHP单例模式应用示例【多次连接数据库只实例化一次】
2018/12/18 PHP
微信公众平台开发教程④ ThinkPHP框架下微信支付功能图文详解
2019/04/10 PHP
Ext第一周 史上最强学习笔记---GridPanel(基础篇)
2008/12/29 Javascript
JQuery1.8 判断元素是否绑定事件的方法
2014/07/10 Javascript
jQuery分组选择器用法实例
2014/12/23 Javascript
jQuery实现定时读取分析xml文件的方法
2015/07/16 Javascript
js实现搜索框关键字智能匹配代码
2020/03/26 Javascript
onmouseover事件和onmouseout事件全面理解
2016/08/15 Javascript
巧用weui.topTips验证数据的实例
2017/04/17 Javascript
详解nodejs实现本地上传图片并预览功能(express4.0+)
2017/06/28 NodeJs
Angular.js ng-file-upload结合springMVC的使用教程
2017/07/10 Javascript
AngularJS中使用three.js的实例详解
2017/07/21 Javascript
js生成word中图片处理方法
2018/01/06 Javascript
Vue结合Video.js播放m3u8视频流的方法示例
2018/05/04 Javascript
微信开发之企业付款到银行卡接口开发的示例代码
2018/09/18 Javascript
浅谈vue中组件绑定事件时是否加.native
2019/11/09 Javascript
Python图算法实例分析
2016/08/13 Python
Python常见数字运算操作实例小结
2019/03/22 Python
python爬虫 urllib模块url编码处理详解
2019/08/20 Python
浅析python 字典嵌套
2020/09/29 Python
selenium3.0+python之环境搭建的方法步骤
2021/02/01 Python
英国精品买手店:Browns Fashion
2016/09/29 全球购物
亚马逊印度站:Amazon.in
2017/10/15 全球购物
美国最好的钓鱼、狩猎和划船装备商店:Bass Pro Shops
2018/12/02 全球购物
出国考察邀请函
2014/01/21 职场文书
统计岗位职责
2014/02/21 职场文书
成绩单家长评语大全
2014/04/16 职场文书
初三新学期计划书
2014/05/03 职场文书
2014年机关作风建设工作总结
2014/10/23 职场文书
退学证明范本3篇
2014/10/29 职场文书
2015年控辍保学工作总结
2015/05/18 职场文书
爸爸的三轮车观后感
2015/06/16 职场文书
解决vue自定义组件@click点击失效问题
2022/04/30 Vue.js