Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ближайшие к курсору (выделению) теги, в firefox и компании 
:(
    Опции темы
Frozen_Coyote
Дата 23.2.2011, 09:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 20.9.2007

Репутация: нет
Всего: нет



Друзья, а подскажите пожалуйста - как узнать ближайшие родительские к выделению (курсору) теги, а так же ближайший дочерний к выделению тег. У меня с commonAncestorContainer какая то свистопляска получается - и с childNodes[0] тоже. Как? smile

спасибо!
PM MAIL   Вверх
Amphiluke
Дата 23.2.2011, 10:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 35
Всего: 112



Цитата(Frozen_Coyote @  23.2.2011,  12:27 Найти цитируемый пост)
У меня с commonAncestorContainer какая то свистопляска получается

Что конкретно не устраивает в commonAncestorContainer?


Цитата(Frozen_Coyote @  23.2.2011,  12:27 Найти цитируемый пост)
и с childNodes[0] тоже

Скорее вам понадобится свойство nextSibling, а не childNodes.
Например, пусть у нас имеется такое выделение:
<p>Some <strong>text</srtong> goes here</p>
Красное — это выделение. Чтобы получить элемент strong как «ближайший дочерний» по отношению к выделенному фрагменту, понадобится примерно такой код:
Код

var sel = window.getSelection();
var rng = sel.getRangeAt(0);
var sc = rng.startContainer;
var child = sc.nextSibling;
alert(child.nodeName);

PM   Вверх
Frozen_Coyote
Дата 23.2.2011, 10:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 20.9.2007

Репутация: нет
Всего: нет



Тут понимаете какая петрушка: что опера что фаер при выделении в iframe допустим ссылки (даже если на экране ссылка выделена четко от начала и до конца от буквы до буквы) могут на проверку показать что границы выделения - не <A> . Да что я голосовлю - посмотрите вот тут - я выложил тестик (Тестик) А мне для своей задачки нужно при получении выделения-линка содрать с него значение href (ну getAttribute - это ясно, дело не в нем). Беда в том что ИЕ четко хватает ссылку, а фаер и оепра и вся эта компания требуют отступ (сейчас немного переписал код - получается наоборот - если выделение внутри ссылки - то получается то что надо, чем больше вылетает за границы ссылки - реально, просто по пикселям приходится выделять от буквы до буквы) то результат - zero

А ваш код что то не работает - не показывает дочку - хоть ты тресни - хоть я и с умышленным запасом делаю выделение чтобы этот A несчастный получить smile
PM MAIL   Вверх
Amphiluke
Дата 23.2.2011, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 35
Всего: 112



Могу предложить модифицировать ваш код в таком духе:
Код

//MOZILLA
if(idoc.getSelection)
{
    var select = iframe.contentWindow.getSelection();
    var range = select.getRangeAt(0);
    var tempel = document.createElement('div');
    var alink = range.commonAncestorContainer;
    while (alink.nodeType != 1) alink = alink.parentNode;
    tempel.appendChild(alink.cloneNode(true));
    var txt = tempel.innerHTML;
}



Цитата(Frozen_Coyote @  23.2.2011,  13:28 Найти цитируемый пост)
А ваш код что то не работает - не показывает дочку - хоть ты тресни - хоть я и с умышленным запасом делаю выделение чтобы этот A несчастный получить

Нормально работает. smile Если, конечно, вы заменили window.getSelection() на iframe.contentWindow.getSelection()
PM   Вверх
Frozen_Coyote
Дата 23.2.2011, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 20.9.2007

Репутация: нет
Всего: нет



О спасибо! Очень помогли! smile
PM MAIL   Вверх
Frozen_Coyote
Дата 24.2.2011, 16:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 20.9.2007

Репутация: нет
Всего: нет



Кстати а свойство выделенного в iframe изображения ак то можно получить? я вот смотрю - все таки картинка четко выделяется - не как текст выделение в котором может цеплять разные контейнеры - есть ли предопределенные методы работы с выделенными изображениями, для получения его свойств?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0461 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.