Sto seguendo un tutorial su Lynda.com sul nuovo modello di eventi DOM.addEventListener non funziona in Chrome
Questo è il codice con cui sto lavorando.
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);
sto aggiungendo che per l'evento click su questo link
<a href="#" title="click me" id="clickLink">Click Me!</a>
Funziona perfettamente bene in IE, Firefox, Opra ma non in Chrome. Mi sono guardato intorno, ma non sono ancora riuscito a trovare qualcosa di specifico. Alcune domande simili ma non rispondono alla mia domanda.
ottengo il seguente errore dalla console Chrome
Uncaught TypeError: Object [object HTMLAnchorElement] has no method 'attachEvent'
eventuali sugestions o un link per la risposta.
grazie in anticipo.
Questo è un cattivo tutorial e mostra chiaramente il pericolo di prova per l'esistenza di un oggetto diverso da quello che si desidera utilizzare. 'if (typeof oNode.attachEvent! =" undefined ")' sarebbe meglio. Meglio ancora sarebbe preferire la funzione basata sugli standard 'addEventListener' testandola per prima. –