(jquery)変更イベントハンドラから変更イベントをトリガしたものを見つけることができますか?キーコードを取得/クリック/変更イベントをトリガー
私の使用例:入力[type = text]アイテムの動的リストがあります。ユーザーが最後の空のアイテムを塗りつぶした場合、別のアイテムの新しい入力[type = text]を追加します。ユーザーがタブを押した(変更イベントを発生させた)場合は自動フォーカスしたいのですが、たとえばユーザーがどこかをクリックしたときなどはそうではありません(変更がトリガーされていますが、
簡略化した例:
https://jsfiddle.net/yxu82p1o/1/
<input type=text>
<script>
function addMore() {
$('input').off('change.addMore');
$('<input type=text>').insertAfter($('input').last()).on('change.addMore', addMore);
}
$('input').on('change.addMore', addMore);
</script>
PS。私は、別のキーアップイベントをアタッチし、そこからキーを押さえるなどの回避策を見つけ出すことができますが、それが原因で何が起こったのかをチェンジイベントから見つけることははるかに簡単でクリーンです。
'addMore引数にe'追加します。その後、'キーボードやマウス – bozdoz
@bozdozため 'e.button'ためe.which'をチェックし、' addMore(e)を ' - ' e.which'と 'e.button'は' change'で 'undefined'になります。少なくともchromeでは、または何かがここにないのですか? – DavidDomain