disabled属性のbuttonはclickイベントなどが発火しなくなりますが、どのイベントが発生しなくなるのかはブラウザごとに異なります。
ブラウザ | 発生しなくなるイベント |
---|---|
Chrome | click, focus/blur |
Firefox | click, focus/blur, mouseup/down |
Safari | click, focus/blur, mouseup/down, mouseenter/move/leave |
IE11,Edge | 無し* |
iOS Safari | click, focus/blur |
Android Chrome | click, focus/blur |
*IE11,EdgeはaddEventListenerによるものでは発火しなくなるイベントはありませんが、onclick属性は実行されなくなりますし、formのbuttonでのsubmitは発火しなくなります。
以下のコード書けばIE11,EdgeでもaddEventListenerのclickの実行を回避できます。
window.addEventListener('click', function (e) {
if(e.target.disabled) {
e.preventDefault();
e.stopPropagation();
}
}, true);