Почему элемент contentEditable отклоняет клавишу ввода? - PullRequest
4 голосов
/ 11 января 2009

Я использую приложение, которое встраивает элемент управления IE для показа контента. Я изменяю этот контент, чтобы он содержал элемент <div contentEditable="True">Hello World</div>. Это хорошо работает, и я могу редактировать содержимое этого div, но нажатие клавиши Enter отклоняется со звуковым сигналом.

Когда я добавляю элемент textarea на эту страницу, работает клавиша Enter, и я могу добавлять строки, но не в элемент contentEditable.

Когда я присоединяю событие к этому элементу, я вижу, что нажатие клавиши Enter запускает событие keyDown, но не нажатие клавиши.

У кого-нибудь есть идеи, что может вызвать это?

Спасибо
splintor

Ответы [ 3 ]

0 голосов
/ 21 декабря 2010

Я проверил это в IE и Firefox, он отлично работал

0 голосов
/ 01 сентября 2012

В некоторых случаях вы присоединяете событие keydown к документу.

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

удалите его или добавьте событие keydown в редактируемый файл stopPropagation.

$('#target').keydown(function(e) {
 e.stopPropagation();
});
0 голосов
/ 05 февраля 2009

Большинство элементов HTML игнорируют пробелы. Включение \ r или \ n в любой DIV или подобный элемент просто игнорируется.

...