2

( before()jquery の関数を使用して、新しい<p>要素を div レイヤーに追加しています。

$('#AddParagraphButton').click(function() {
    $('#TheLayer').before('<p contentEditable='true'>Some text...</p>');    
});



ここでは、タグkeypressを挿入する関数を設定しています。<br>

$('p').keypress(function(e){
    if(e.which == 13){
       e.preventDefault();  
       document.execCommand('insertHTML', false, '<br/>');
    }
});


これは、append 関数が呼び出されて新しい<p>ものが追加されるまでは正常に機能します (br タグの挿入)。livequery でkeypressイベントをアンバインドして再度バインドするにはどうすればよいですか?


編集:<p>タグにはcontentEditableプロパティがあります。<br>タグがdivでラップされており、タグのみが必要<br>なため、これを行っています

4

1 に答える 1

1

組み込みlive()機能の使用を検討しましたか?..

説明:現在および将来において、現在のセレクターに一致するすべての要素のイベントにハンドラーをアタッチします。

$('p').live("keypress", function(e){
    e.preventDefault();
      if(e.which == 13){
         document.execCommand('insertHTML', false, '<br/>');
    }
});
于 2010-12-30T21:10:31.747 に答える