IE10とIE11でinputイベントとplaceholder属性がある場合inputイベントが意図しないタイミングで発火する

IE10とIE11でinputイベントとplaceholder属性がある場合、inputイベントが意図しないタイミングで発火するという不具合(バグ)が発生します。

JavaScript

原因

意図しないタイミングは、フォーカスされたときに発火します。
また、IE11ではそれに加えて、フォーカスが外れたとき、placeholder属性の値に2バイト以上の文字が含まれていた場合でページが読み込まれたときに発火します。
IE11のエミュレーションモードでIE10を選択した場合では、フォーカスが外れたときも発火します。

回避方法

この不具合(バグ)を回避するには、次の方法で可能です。

placeholder属性を削除

placeholder属性を削除することで回避することができます。

keyupイベントやchangeイベントに置き換える

inputイベントをやめて、keyupイベントやchangeイベントに置き換えることで回避することができます。

JavaScript