ユーザーが contenteditable div でキーを押したことを検出したいと思います。ただし、div は動的に読み込まれるため、最初のキー押下のみをキャッチしたいと思います。
jqueryが最初のキープレスのみをキャッチするのと同じ結果が欲しいですか? ただし、動的コンテンツの場合。
これまでの私のコード:
$(document).on('keypress',"#divid",function(){});
ユーザーが contenteditable div でキーを押したことを検出したいと思います。ただし、div は動的に読み込まれるため、最初のキー押下のみをキャッチしたいと思います。
jqueryが最初のキープレスのみをキャッチするのと同じ結果が欲しいですか? ただし、動的コンテンツの場合。
これまでの私のコード:
$(document).on('keypress',"#divid",function(){});
最初のキー押下のみをキャッチしたい場合はone
、そのために使用できます (はい、本当にone
— ひどい駄洒落です):
$(document).one('keypress',"#divid",function() { });
または、ハンドラーが起動されたときにハンドラーを明示的に削除します (おそらく何らかの条件を確認した後)。
$(document).on('keypress',"#divid",handler);
function handler() {
$(document).off('keypress',"#divid");
}
(はい、天の助けを借りて、関数は実際に呼び出されoff
ます。)