addEventListener in Chrome
addEventListener in Chrome
我正在学习Lynda.com上关于新的DOM事件模型的教程。
这是我正在使用的代码。
function addEventHandler(oNode, sEvt, fFunc, bCapture){
if (typeof (window.event) != "undefined")
oNode.attachEvent("on" + sEvt, fFunc);
else
oNode.addEventListener(sEvt, fFunc, bCapture);
}
function onLinkClicked(e){
alert('You clicked the link');
}
function setUpClickHandler(){
addEventHandler(document.getElementById("clickLink"), "click", onLinkClicked, false);
}
addEventHandler(window, "load", setUpClickHandler, false);
我将它添加到这个链接的点击事件
<a href="#" title="click me" id="clickLink">Click Me!</a>
它在IE, Firefox, Opera中工作得很好,但在Chrome中不行。我四处看了看,但还没有找到任何具体的东西。一些类似的问题,但它没有回答我的问题。
我从Chrome控制台得到以下错误:
Uncaught TypeError: Object [Object htmlchoreement] has no method 'attachEvent'
有什么建议或答案的链接吗?
为什么要测试:
if (typeof (window.event) != "undefined")
…以决定是否使用attachEvent()
?Chrome确实定义了window.event
,所以你的代码试图使用attachEvent()
,这是没有定义的。
尝试直接测试方法:
if (oNode.attachEvent)
oNode.attachEvent("on" + sEvt, fFunc);
else
oNode.addEventListener(sEvt, fFunc, bCapture);
相关文章:
- window.opener not working in chrome & IE
- cmd+c in keyUp event on Chrome OSX (Mac)
- requestAnimFrame 60FPS in Chrome, 1FPS in FF
- history.pushState in Chrome make favicon request
- jquery append in chrome
- javascript self.close() in chrome
- XMLHTTPRequest resulting in Aw, snap in chrome
- Canvas Bug in Chrome
- ERR_NAME_NOT_RESOLVED in Chrome
- document.getElementById().value return undefined in chrome
- window.find() in Firefox vs Chrome
- event.dataTransfer.dropEffect in chrome
- net::ERR CONTENT LENGTH MISMATCH in Chrome with Jboss WildFl
- window.open as tabs not pop ups in Chrome
- Firefox Bookmarklet in Chrome
- Ruby Time to JavaScript Date in Chrome/Firefox
- Using onafterprint in Chrome & Safari
- Chrome Crashing with whitespaces in Textarea on using onClic
- Weird behavior in chrome's javascript .width property
- document.getElementById in chrome