Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.06.2011, 07:32
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Неоднозначность в смещении Range-объектов
<div id="root">text left<span id="bound"> text in span </span>text right</div>

<script>
rng= document.createRange(); // создаём Range
bound= document.getElementById("bound"); // спанчик)
root= document.getElementById("root"); // дивчик)

rng.setStart(root.firstChild, 2); // внутри текстовой ноды - смещение в символах
rng.setEnd(root, 1); // внутри ELEMENT_NODE - смещение в нодах

b= document.createElement("b");
rng.surroundContents(b);

alert(rng.startContainer.id+" "+rng.startOffset); // показано смещение в нодах внутри div.root
alert(rng.endContainer.id+" "+rng.endOffset); // то же самое и тут.
alert(rng.toString());
</script>


Теперь, собственно, вопрос. Есть возможность узнать, было ли смещение задано в текстовой ноде внутри контейнера либо же в самом контейнере?
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)

Последний раз редактировалось trikadin, 23.06.2011 в 19:09.
Ответить с цитированием
  #2 (permalink)  
Старый 23.06.2011, 14:07
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Чёрт. Я уже все мануалы скурил...
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #3 (permalink)  
Старый 23.06.2011, 19:18
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Офигеть! Смещение в нодах шло из-за surroundContents! Т.е. если убрать surroundContents - то startContainer, endContainer и offset'ы будут в текстовых узлах.

Просто... Я думал я застрелюсь.
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #4 (permalink)  
Старый 27.06.2011, 11:27
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

внезапно проблема оказалась в единственной непрокомментированной строчке х)
__________________
.ня
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массив объектов или объект объектов vladlen Общие вопросы Javascript 19 30.10.2010 03:10
Быстрый поиск объектов Shasoft Общие вопросы Javascript 7 30.07.2009 05:28