2009-01-11 77 views
4

我正在使用嵌入IE控件来显示内容的应用程序。我更改该内容以包含<div contentEditable="True">Hello World</div>元素。这个效果很好,我可以编辑这个div的内容,但按Enter键会被拒绝并发出嘟嘟声。为什么contentEditable元素拒绝Enter键?

当我添加一个textarea元素到该页面时,Enter键可以工作,我可以添加行,但不能添加到contentEditable元素中。

当我将事件附加到该元素时,我看到按下Enter键会触发keyDown事件,但不会触发keyPress。

任何人都有一个想法可能会导致它?

感谢,
splintor

+0

文档在正常浏览器中是否正常工作(如预期的那样)? – Borgar 2009-02-03 13:30:12

+0

是的 - 在一个正常的浏览器中,它的工作原理非常好。 – splintor 2009-02-05 21:08:29

回答

0

大多数HTML元素忽略空白。在任何DIV或类似元素中包含\ r或\ n都会被忽略。

0

我在IE浏览器检查它和Firefox它的工作还有什么地方你附加keydown事件记录完美

0

一些。

document.addEventListener('keydown', handle, false); 

删除它或将keydown事件添加到可编辑停止传播。

$('#target').keydown(function(e) { 
e.stopPropagation(); 
});