为什么这个点击事件失败了

时间:2011-06-20 00:44:47

标签: javascript jquery

好吧,如果你去我的site并点击右边的中心“快速浏览>>>”,我会感到难过..i得到这个出现的灯箱,我想以编程方式关闭它,在firebug我可以看到x是id“rokbox-close”但在firebug中运行

document.getElementById('rokbox-close').click();

但我收到此错误

 TypeError: document.getElementById("rokbox-close").click is not a function

任何想法如何做到这一点

我可以运行这个

document.getElementById("rokbox-close")

并获取元素,但单击功能失败...我没有安装jquery所以我想知道是否有一个我缺少的JavaScript的东西

3 个答案:

答案 0 :(得分:4)

并非所有浏览器都有与按钮和锚点等相关联的“click()”功能.IE(我认为),但(例如)Firefox没有。

编辑 - 根据MDC,Firefox 5 will support this哇。

如果您使用的是jQuery等框架,那么该代码可能允许您执行所需的操作。 (使用jQuery你绝对可以。)

(另外,严格来说,我们不是在讨论事件。我们正在讨论以编程方式触发事件处理机制的能力。)

答案 1 :(得分:1)

如果您使用简单的JavaScript代替“点击”,请使用“onclick”:

document.getElementById("rokbox-close").onclick = youClickHandlerFunction

如果你使用jQuery:

$('#rokbox-close').click(youClickHandlerFunction)

在此处查看更多信息:http://www.quirksmode.org/js/introevents.html 或者在这里:http://api.jquery.com/click/

答案 2 :(得分:1)

click()函数是所有浏览器都不支持的。您可能正在考虑jQuery提供的单击处理程序。

要更全面地了解click()未被普遍处理的原因,请查看此链接,其中包含跨不同浏览器的事件处理的漫长而曲折的历史记录: http://www.quirksmode.org/js/introevents.html