好吧,如果你去我的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的东西
答案 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