2010-10-01 3 views
3

Вопрос: должен ли отключенный элемент создать событие, которое будет инициировано на его родительском устройстве?Bubbling событие, вызванное отключенным элементом

<div id="test"> 
    <button disabled="disabled">Click me</button> 
</div> 
<script type="text/javascript"> 

document.getElementById("test").onclick = function() { 
    alert("Clicked!"); 
}; 

</script> 

Все браузеры, кроме IE, предотвращают запуск события, но IE этого не делает. Является ли это поведение документированным или стандартизованным? Какой из браузеров правильно обрабатывает код?

+0

ли вы испытать это в IE в режиме совместимости или стандартном режиме? –

+0

Тип документа:

+0

I было интересно, нашли ли вы решение/объяснение. – Moss

ответ

0

Согласно http://www.quirksmode.org/js/events_advanced.html Я настоятельно рекомендую использовать делегирование делегаций вместо .onclick(). Пример:

var element = document.getElementById('test'), 
    doSomething = function() { 
     alert("Clicked!"); 
    }; 
if (element.addEventListener) { 
    element.addEventListener('click', doSomething, false); 
} else if (element.attachEvent) { 
    elem.attachEvent('onclick', doSomething); 
} 

:)

Смежные вопросы