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 相关文章推荐
推荐自用 Javascript 缩图函数 (onDOMLoaded)……
Oct 23 Javascript
通过JS 获取Mouse Position(鼠标坐标)的代码
Sep 21 Javascript
Jquery弹出窗口插件 LeanModal的使用方法
Mar 10 Javascript
jquery使用淘宝接口跨域查询手机号码归属地实例
Nov 28 Javascript
JS动态调用方法名示例介绍
Dec 18 Javascript
详解JavaScript的另类写法
Apr 11 Javascript
javascript html5摇一摇功能的实现
Apr 19 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
Sep 05 Javascript
自定义vue全局组件use使用、vuex的使用详解
Jun 14 Javascript
Javascript 一些需要注意的细节(必看篇)
Jul 08 Javascript
详解项目升级到vue-cli3的正确姿势
Jan 28 Javascript
vue 强制组件重新渲染(重置)的两种方案
Oct 29 Javascript
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多态代码实例
2015/06/26 PHP
Zend Framework动作助手Url用法详解
2016/03/05 PHP
php版微信发红包接口用法示例
2016/09/23 PHP
基于CI框架的微信网页授权库示例
2016/11/25 PHP
PHP使用curl函数发送Post请求的注意事项
2016/11/26 PHP
PHP 实现浏览记录并按日期分组
2017/05/11 PHP
比较全的JS checkbox全选、取消全选、删除功能代码
2008/12/19 Javascript
学习ExtJS Window常用方法
2009/10/07 Javascript
jquery focus(fn),blur(fn)方法实例代码
2011/12/16 Javascript
JavaScript版TAB选项卡效果实例
2013/08/16 Javascript
JavaScript中解析JSON数据的三种方法
2015/07/03 Javascript
js实现的动画导航菜单效果代码
2015/09/10 Javascript
JavaScript程序开发之JS代码放置的位置
2016/01/15 Javascript
JavaScript DOM节点操作方法总结
2016/08/23 Javascript
js判断PC端与移动端跳转
2020/12/24 Javascript
使用Require.js封装原生js轮播图的实现代码
2017/06/15 Javascript
seajs下require书写约定实例分析
2018/05/16 Javascript
详解vue挂载到dom上会发生什么
2019/01/20 Javascript
在微信小程序中使用vant的方法
2019/06/07 Javascript
[00:34]DOTA2上海特级锦标赛 Spirit战队宣传片
2016/03/04 DOTA
Python复制文件操作实例详解
2015/11/10 Python
快速解决pandas.read_csv()乱码的问题
2018/06/15 Python
用xpath获取指定标签下的所有text的实例
2019/01/02 Python
python assert的用处示例详解
2019/04/01 Python
python+selenium+chrome批量文件下载并自动创建文件夹实例
2020/04/27 Python
Keras实现将两个模型连接到一起
2020/05/23 Python
COS美国官网:知名服装品牌
2019/04/08 全球购物
国际奢侈品品牌童装购物网站:Designer Childrenswear
2019/05/08 全球购物
工程造价专业大专生求职信
2013/10/06 职场文书
大专毕业生自我评价分享
2013/11/10 职场文书
四风问题个人对照检查剖析材料
2014/09/27 职场文书
婚前协议书范本
2014/10/27 职场文书
幼儿园小班见习报告
2014/10/31 职场文书
幼儿园五一劳动节活动总结
2015/02/09 职场文书
Java 在生活中的 10 大应用
2021/11/02 Java/Android
nginx配置指令之server_name的具体使用
2022/08/14 Servers