<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 接口并支持该方法。
相关推荐
用该方法创建了 Event 对象以后,必须用上表中所示的初始化方法初始化对象。关于初始化方法的详细信息,请参阅 Event 对象参考。
JS的document_详细介绍及用法,从菜鸟到高手的过程是艰辛的,你渴望救助。这本教程就是你无言的助手,默默的帮你到永远。 带奋斗一起飞翔,因为有了它,让我拥有理智之思;我才使过去的失误不再重演到今天的影片里;...
可以在document对象上使用createEvent()方法创建event对象,此方法接收一个参数,即要创建的事件类型的字符串。在DOM2级中这些字符串都使用英文复数形式,而在DOM3级中都变成了单数。这个字符串可以是以下几个字符串...
JavaScript权威指南 犀牛书 Chapter 1. Introduction to JavaScript Section 1.1. JavaScript Myths Section 1.2. Versions of JavaScript Section 1.3. Client-Side JavaScript Section 1.4. JavaScript ...
线程中CreateEvent和SetEvent及WaitForSingleObject的用法
微博机器人脚本,通过document.createEvent模拟鼠标点击
百度翻译源码java ...document.createEvent('kaiyu'); //属性 innerText, innerHTML,checked(true|false ""|"checked"),title, value, src, href, contentEditable //DOM元素API参考,包括属性和方法 ...
java版商城源码下载 ...document.createEvent('kaiyu'); //属性 innerText, innerHTML,checked(true|false ""|"checked"),title, value, src, href, contentEditable //DOM元素API参考,包括属性和方法 ...
java版商城源码下载 ...document.createEvent('kaiyu'); //属性 innerText, innerHTML,checked(true|false ""|"checked"),title, value, src, href, contentEditable //DOM元素API参考,包括属性和方法 ...
先看一下模拟click事件的代码: 代码如下: <a>... } else { //火狐,如果中没有定义onclick事件,则本段对火狐不起作用 var ev = document.createEvent(“MouseEvents”); ev.initEvent(“click”, true, true); docu
本文实例分析了jQuery解决浏览器兼容性问题的方法。分享给大家供大家参考,具体如下: ...var evt = document.createEvent("MouseEvents"); evt.initEvent("click", true, true); document.getElementById("imgLogin
代码如下:if (document.createEvent) { var clickEvent = document.createEvent(“MouseEvents”); clickEvent.initEvent(“click”, false, true); this.fileEl.dom.dispatchEvent(clickEvent);//ff } else if ...
代码如下:function clickButton(id) { if (document.all) { document.... } else { var evt = document.createEvent(“MouseEvents”); evt.initEvent(“click”, true, true); document.getElementById(id
如下 代码如下: var evt = document.createEvent(‘Event’); evt.initEvent(‘click’,true,true); element.dispatchEvent(evt); 2,fireEvent() 这是IE旧版本中实现的触发事件方法,它无须创建事件对象,直接使用...
本文实例讲述了js事件触发操作。分享给大家供大家参考,具体如下: click包含了(mousedown,mouseup)叫做MouseEvents; keydown,keypress,keyup之流叫做UIEvents; focus,load,scroll,submit之流叫做HtmlEvents。 ...
首先通过document.createEvent()方法创建event对象,接收一个参数,即表示要创建的事件类型的字符串: UIEvents(DOM3中的UIEvent)鼠标和键盘事件; MouseEvents(DOM3中的MouseEvent)鼠标事件; Mutation...
Chrome , Firfox 不支持fireEvent的方法 可以使用dispatchEvent的方法替代, 直接给一个兼容的Code. 触发click 事件 代码如下: function simulateClick(el) { var evt; if (document.createEvent) { // DOM Level 2 ...
我们尝试最小化使用“ createEvent”方法的使用,该方法会创建具有复杂情况的错误 它支持IE10(指针和手势) 该库可在w8-IE10,Chrome,Safari,FireFox,Android股票浏览器,Android Chrome,Android FireFox,...
它始终使用标准(DOM、ECMAScript)属性和方法,这也意味着不需要大量随附的文档。 base2 是一个轻量级的库,它消除了 JavaScript 实现中所有恼人的差异。 它提供了 JavaScript 1.6+ 中只有 Mozilla 浏览器才能实现...