IE11 全角文字を設定した input 要素を追加すると input イベントが発生するのを抑止したい
入力要素の input
イベントハンドラをあらかじめ設定している状態で、動的にテキスト要素を追加すると、value に全角文字が含まれている場合、IE11 で input
イベントが発火してしまいます。他のブラウザや、テキストに全角文字が含まれていない場合には input
イベントは発生しません。
「要素の追加後に input
イベントハンドラを後から追加する」という方法以外で何か対処方法はあるでしょうか?
以下、再現コードです。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
</head>
<body>
<button type="button">追加</button>
<script src="//code.jquery.com/jquery-3.2.1.min.js"></script>
<script>
$("body").on("input", "input", function () {
console.log("input");
});
$("button").on("click", function () {
var $input = $('<input type="text" value="あ" />');
$("body").append($input);
console.log("append");
});
</script>
</body>
</html>