(我使用jquery中的before()
函数将新的<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/>');
}
});
这工作正常(br标签插入),直到调用append函数并添加新的<p>
。如何让livequery取消绑定 keypress 事件并再次绑定?
修改:<p>
代码具有 contentEditable 属性。我是这样做的,因为<br>
标签包含在div中,我只想要<br>
标签
答案 0 :(得分:1)
您是否考虑过使用内置的live()
功能?..
说明:为现在和将来与当前选择器匹配的所有元素附加处理程序。
$('p').live("keypress", function(e){
e.preventDefault();
if(e.which == 13){
document.execCommand('insertHTML', false, '<br/>');
}
});