Показать сообщение отдельно
  #1 (permalink)  
Старый 16.10.2014, 21:53
Новичок на форуме
Отправить личное сообщение для Romja Посмотреть профиль Найти все сообщения от Romja
 
Регистрация: 14.03.2014
Сообщений: 6

getSelection(), createRange() и перенос курсора в пустой тег
Доброго времени суток! Возникла проблема такого плана: при фокусе элемента <div> с атрибутом contenteditable="true", в этом div-е создается пустой параграф <p></p>, также, после создания параграфа, курсор ввода текста должен переместится в этот параграф и при вводе какого-либо текста, текст должен заносится не в <div> а в <p>. Вот как-то у меня совсем это не получается, приведенный ниже код работает только если в параграфе будет хоть немного текста.

<div id="editor" contenteditable="true"></div>


$('#editor').focus(function() {
        if($(this).html() == '') {
            $(this).html('<p></p>');

            var par = $(this).children('p').get(0);
            rng = document.createRange();
            rng.selectNode(par);
            sel = window.getSelection();
            sel.removeAllRanges();
            sel.addRange(rng);
        }
});
Ответить с цитированием