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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переход на элемент, кроссбраузерный переход и выделение 
:(
    Опции темы
Atum
Дата 28.1.2010, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Всем добрый день ! 

возник такой вот вопрос , как сделать кросс-браузный переход на выделенный  тест ? 

когда данных много появляется  скролл который надо прокрутить на нужный компонент .

Код

<html>
<body>
<script language="JavaScript">
function function1() {

var strid ="#div6";

      var selection = window.getSelection();
       var range = document.createRange();
       var tab = document.getElementById("div6");
       range.selectNode(tab);
       selection.removeAllRanges();
       selection.addRange(range);
     
}
</script>

<div name="myElem" style=" width:200; height:100; overflow:auto;">

<div id="div7">dfdfdfdfdf2</div>
<div id="div1">dfdfdfdfdf3</div>
<div id="div4">dfdfdfdfdf4</div>
<div id="div711">dfdfdfdfdf734</div>
<div id="div721">dfdfdfdfdf3427</div>
<div id="div731">dfdfdfdfdf2347</div>
<div id="div741">dfdfdfdfdf234347</div>
<div id="div5">dfdfdfdfdf5</div>
<div id="div6">dfdfdfdfdf6</div>
<div id="div71">dfdfdfdfdf7</div>
<a id="div11">dfdfdfdfdf1</a>
<div id="div11271">dfdfdfdfdf7</div>
<a id="div121211">dfdfdfdfdf1</a>
<div id="div121271">dfdfdfdfdf7</div>
<a id="div112121">dfdfdfdfdf1</a>
<div id="div71212121">dfdfdfdfdf7</div>
<a id="div1121231">dfdfdfdfdf1</a>
</div>

<input type="text" value="1111"> 
<input type="button" value="sel" onclick="function1();">
</body>
</html>



текст с div6 выделяется , но вот скролл на него не прокручивается . 

Выделение работает в Firefox 3.6  и Chrome 4  . 

Как сделать для всех браузеров ? Safari , IE , Opera ? 

 


PM MAIL   Вверх
12345c
Дата 28.1.2010, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

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



Там свой объект TextRange, поищите на форуме или в сети.

Методы .boundingLeft, .boundingTop , далее прокрутка к этим координатам вручную (.scrollTop). В Safari 3, если сам не подкрутился, стало быть, надо использовать Range и тоже крутить вручную.


--------------------
Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go
PM WWW   Вверх
Atum
Дата 29.1.2010, 10:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(12345c @ 28.1.2010,  18:54)
Там свой объект TextRange, поищите на форуме или в сети.

Методы .boundingLeft, .boundingTop , далее прокрутка к этим координатам вручную (.scrollTop). В Safari 3, если сам не подкрутился, стало быть, надо использовать Range и тоже крутить вручную.

а можно пример smile 
 что-то  у меня не работает или я не так делаю, но не крутится и не выделяется.
PM MAIL   Вверх
bars80080
Дата 31.1.2010, 23:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

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



Цитата(Atum @  29.1.2010,  09:37 Найти цитируемый пост)
а можно пример

здесь есть примеры
PM MAIL WWW   Вверх
Atum
Дата 1.2.2010, 17:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Нашел  вот такую вот  вещь для перехода 

Код

window.location.hash=id;
 

где id = "#div6";

переходит хорошо в IE , в FF  и иногда в Chrome а вот почему иногда я понять не могу.

Может кто нибудь расскажет почему не всегда переходит ?

PM MAIL   Вверх
bars80080
Дата 1.2.2010, 17:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

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



а может нет элемента с id="div6"? или он был вставлен не через DOM, а скажем .innerHTML?
PM MAIL WWW   Вверх
Atum
Дата 4.2.2010, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



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


 




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


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

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