Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #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);
        }
});
Ответить с цитированием
  #2 (permalink)  
Старый 16.10.2014, 23:36
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Romja
если в параграфе будет хоть немного текста
Ну так, потому то wysiwyg редакторы типа CKEditor/TinyMCE вставляют <br>
Вобще, не советую связываться с contenteditable самому. Лучше заюзать готовый вылизанный скрипт. Например тот же CKEditor - он умеет работать в режиме contenteditable.
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Позиция курсора через getSelection DeD_Mazai Events/DOM/Window 1 04.09.2013 15:49
Позиция курсора через getSelection DeD_Mazai jQuery 1 25.08.2013 18:52
Получить координаты курсора в текстовом поле в пикселях prike Events/DOM/Window 4 23.05.2013 04:35
Как заставить пустой тег <p> быть высотой в одну строку? xintrea (X)HTML/CSS 6 01.10.2012 09:38
по ctrl+Enter перенос курсора на след. строку Crux Internet Explorer 5 09.08.2010 15:30