js 中 document.createEvent的用法


Posted in Javascript onAugust 29, 2010

<a class="comment-mod" onclick="alert('ss')" href="#">评论</a>
如果用户直接查看文章列表,那么所有的评论以及评论框都是不显示的,但是如果用户通过别的页面比如首页的个人动态直接定位到这篇日志,那么评论就应该全部显示。而列表页和查看单个条目的页面是同一个页面,这就要求我判断一下用户是否定位到该篇日志,如果是,就通过JS来触发 A 标签的点击事件。
一开始我尝试了一些方法,想当然地以为 A 标签和按钮一样是有 onclick() 事件的,结果发现没有,后来从网上搜了一些资料之后,成功解决了这个问题^_^ 。解决办法是针对 IE 和 FF编写不同的逻辑,部分代码如下:

<script> 
var comment = document.getElementsByTagName('a')[0]; 
if (document.all) { 
// For IE 
comment.click(); 
} else if (document.createEvent) { 
//FOR DOM2 
var ev = document.createEvent('HTMLEvents'); 
ev.initEvent('click', false, true); 
comment.dispatchEvent(ev); 
} 
</script>

语法:
createEvent(eventType)
参数
描述
eventType
想获取的 Event 对象的事件模块名。
关于有效的事件类型列表,请参阅"说明"部分。

返回值
返回新创建的 Event 对象,具有指定的类型。
抛出
如果实现支持需要的事件类型,该方法将抛出代码为 NOT_SUPPORTED_ERR 的 DOMException 异常。
说明
该方法将创建一种新的事件类型,该类型由参数 eventType 指定。注意,该参数的值不是要创建的事件接口的名称,而是定义那个接口的 DOM 模块的名称。
下表列出了 eventType 的合法值和每个值创建的事件接口:
参数
事件接口
初始化方法
HTMLEvents
HTMLEvent
iniEvent()
MouseEvents
MouseEvent
iniMouseEvent()
UIEvents
UIEvent
iniUIEvent()

用该方法创建了 Event 对象以后,必须用上表中所示的初始化方法初始化对象。关于初始化方法的详细信息,请参阅 Event 对象参考。
该方法实际上不是由 Document 接口定义的,而是由 DocumentEvent 接口定义的。如果一个实现支持 Event 模块,那么 Document 对象就会实现 DocumentEvent 接口并支持该方法。

Javascript 相关文章推荐
繁简字转换功能
Jul 19 Javascript
IE6与IE7中,innerHTML获取param的区别
Mar 15 Javascript
jQuery的实现原理的模拟代码 -1 核心部分
Aug 01 Javascript
使用js画图之正弦曲线
Jan 12 Javascript
JS实现可拖曳、可关闭的弹窗效果
Sep 26 Javascript
实现非常简单的js双向数据绑定
Nov 06 Javascript
文本框只能输入数字的实现方法(兼容IE火狐)
Jun 25 Javascript
关于 jQuery Easyui异步加载tree的问题解析
Dec 06 Javascript
Bootstrap导航条的使用和理解3
Dec 14 Javascript
node.js 抓取代理ip实例代码
Apr 30 Javascript
Bootstrap多级菜单的实现代码
May 23 Javascript
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
Apr 28 jQuery
JQuery浮动DIV提示信息并自动隐藏的代码
Aug 29 #Javascript
jQuery下的几个你可能没用过的功能
Aug 29 #Javascript
基于jquery的一个浮动框(扩展性比较好 )
Aug 27 #Javascript
Jquery+ajax请求data显示在GridView上(asp.net)
Aug 27 #Javascript
JQERY limittext 插件0.2版(长内容限制显示)
Aug 27 #Javascript
Jquery.TreeView结合ASP.Net和数据库生成菜单导航条
Aug 27 #Javascript
jquery 插件开发备注
Aug 27 #Javascript
You might like
PHP 一个页面执行时间类代码
2010/03/05 PHP
php 提速工具eAccelerator 配置参数详解
2010/05/16 PHP
php 常用算法和时间复杂度
2013/07/01 PHP
解决laravel5中auth用户登录其他页面获取不到登录信息的问题
2019/10/08 PHP
Cookie跨域问题解决方案代码示例
2020/11/24 PHP
javascript下给元素添加事件的方法与代码
2007/08/13 Javascript
Javascript 生成指定范围数值随机数
2009/01/09 Javascript
一个简单的JavaScript 日期计算算法
2009/09/11 Javascript
javascript中的delete使用详解
2013/04/11 Javascript
form表单action提交的js部分与html部分
2014/01/07 Javascript
js判断横竖屏及禁止浏览器滑动条示例
2014/04/29 Javascript
window.onload使用指南
2015/09/13 Javascript
JS实现网页Div层Clone拖拽效果
2015/09/26 Javascript
jQuery+json实现动态创建复杂表格table的方法
2016/10/25 Javascript
[原创]JS基于FileSaver.js插件实现文件保存功能示例
2016/12/08 Javascript
微信小程序实现分享到朋友圈功能
2018/07/19 Javascript
Vue开发之封装上传文件组件与用法示例
2019/04/25 Javascript
一个基于flask的web应用诞生 记录用户账户登录状态(6)
2017/04/11 Python
使用python采集脚本之家电子书资源并自动下载到本地的实例脚本
2018/10/23 Python
Python增强赋值和共享引用注意事项小结
2019/05/28 Python
python2和python3实现在图片上加汉字的方法
2019/08/22 Python
Python3 使用map()批量的转换数据类型,如str转float的实现
2019/11/29 Python
Pycharm的Available Packages为空的解决方法
2020/09/18 Python
CSS Grid布局教程之网格单元格布局
2014/12/30 HTML / CSS
kmart凯马特官网:美国最大的打折零售商和全球最大的批发商之一
2016/11/17 全球购物
韩国乐天网上商城:Lotte iMall
2021/02/03 全球购物
一名女生的自荐信
2013/12/08 职场文书
中学教师培训制度
2014/01/31 职场文书
九年级政治教学反思
2014/02/06 职场文书
洗发露广告词
2014/03/14 职场文书
禁烟标语大全
2014/06/11 职场文书
预备党员考察意见范文
2015/06/01 职场文书
实习单位意见
2015/06/04 职场文书
我的长征观后感
2015/06/09 职场文书
Python入门之基础语法详解
2021/05/11 Python
教你漂亮打印Pandas DataFrames和Series
2021/05/29 Python