次のコードがあり、live() メソッドの使用から on() メソッドの使用に変更したいと考えています。
$('.commenttext').live('keydown', function(e) {
if ((e.which == 13) && !e.shiftKey) {
comment($(this));
return false;
}
});
これは、on() メソッドを使用してオンザフライで作成された投稿にコメントすることです。このように単に「ライブ」という単語だけを「オン」に変更すると
$('.commenttext').on('keydown', function(e) {
if ((e.which == 13) && !e.shiftKey) {
comment($(this));
return false;
}
});
その場で作成されなかったアイテムでのみ機能します。
更新 1
コードを次のように変更しました。
$('.commentsDiv').on('keydown', '.commenttext', function(e) {
if ((e.which == 13) && !e.shiftKey) {
comment($(this));
return false;
}
});
commentsDiv は commenttext の親要素ですが、その場で作成された要素では機能しません。たとえば、次の関数はその場で commentsDiv を作成します。
$('#postDiv').on('keydown', '#posttext', function(e) {
if (e.which==13 && !e.shiftKey) {
post($(this));
return false;
}
});
適切に調整する方法を知っている人はいますか?
ありがとう :)