Podążam za tutorialem na stronie Lynda.com o nowym modelu zdarzenia DOM.addEventListener nie działa w Chrome
To jest kod, nad którym pracuję.
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);
dodaję go do zdarzenia kliknij na ten link
<a href="#" title="click me" id="clickLink">Click Me!</a>
To działa perfekcyjnie w IE, Firefox, OPRA ale nie w Chrome. Rozejrzałem się, ale nie udało mi się znaleźć niczego konkretnego. Niektóre podobne pytania, ale nie odpowiada na moje pytanie.
pojawia się następujący błąd w konsoli Chrome
Uncaught TypeError: Object [object HTMLAnchorElement] has no method 'attachEvent'
jakieś sugestie lub link do odpowiedzi.
z góry dzięki.
To zły poradnik i wyraźnie pokazuje niebezpieczeństwa testów na istnienie obiektu innego niż ten, którego chcesz użyć. 'if (typeof oNode.attachEvent! =" undefined ")' byłoby lepsze. Jeszcze lepiej byłoby preferować opartą na standardach funkcję 'addEventListener' poprzez testowanie tego pierwszego. –