Ниже приведены два кода кода для назначения обработчика события для события onclick. Версия One работает в IE, FF, Safari и Chrome. Версия 2 работает в IE, Safari и Chrome, но не в FF. В первой версии я регистрирую обработчик событий в разметке. Во второй версии я использую более новый и, предположительно, более надежный метод регистрации обработчика событий.Firefox не регистрирует обработчик события onclick
Использование firebug, похоже, обработчик события onclick не регистрируется, хотя я не понимаю, почему нет. Любые идеи оценили. Благодарю.
*************** Version One ****************************** < script type="text/javascript"> function handler() { // do something here } </script> < a id="playerFive" class="player" onclick="handler()"> < img src="./images/speakerIcon25pxFFF4E0.png" alt=""/> </a> ************************************************************ *************** Version Two ****************************** < script type="text/javascript"> function handler() { // do something here } </script> < a id="playerFive" class="player"> < img src="./images/speakerIcon25pxFFF4E0.png" alt=""/> </a> < script type="text/javascript"> playerFive.onclick = handler; < /script> ************************************************************
На самом деле ваша вторая версия такая же, как и первая. Он не является «более новым» или «более надежным», вы просто устанавливаете слушателя через JavaScript вместо разметки. Новый способ - использовать 'addEventListener'. Полезная информация: http://www.quirksmode.org/js/events_advanced.html –