Я пытался спросить об этом раньше, но мне не удалось объяснить / доказать рабочий пример, в котором возникает ошибка. Итак, вот еще одна попытка:
Я пытаюсь воспроизвести эффект заполнителя на содержательном DIV. Основная концепция проста:
<div contenteditable><em>Edit me</em></div>
<script>
$('div').focus(function() {
$(this).empty();
});
</script>
Это может иногда сработать, но если заполнитель содержит HTML, или если выполняется какая-либо другая обработка, каретка редактируемого текста DIV удаляется, и пользователь должен повторно щелкнуть редактируемый DIV, чтобы иметь возможность начать ввод (даже если он все еще в фокусе):
Пример: http://jsfiddle.net/hHLXr/6/.
Я не могу использовать триггер фокуса в обработчике, поскольку он создает цикл событий. Поэтому мне нужен способ переустановить курсор курсора в редактируемом DIV или каким-то другим способом перефокусировать.