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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Скрипт, производящий поиск на странице 
:(
    Опции темы
Zaman
Дата 9.12.2005, 19:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



как это сделать правильно ?
PM MAIL   Вверх
Гость_12345
Дата 9.12.2005, 19:46 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Для IE есть .findText() для объекта TextRange. (Для Range нет)
  Вверх
Sardar
Дата 10.12.2005, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

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



ИЕ имеет external.NavigateAndFind, вещь интересная но не кроссплатформена.

Также были умельцы что innerText/textContent доставали и там искали, но! ИМXО это всё лишнее, ничего лучше чем поиск в FireFox я не видел, браузерный поиск всё равно лучше чем скриптовый.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
Zaman
Дата 10.12.2005, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



хорошо что мне тогда использовать для решения поиска не только в IE, но и в FireFox и Opera
какие у них есть для этого ф-ции
PM MAIL   Вверх
Sardar
Дата 10.12.2005, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

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



Просто написать: жмите ctrl+F для поиска smile
Серьёзно если кто то исщет что то на странице то он либо это делает глазами (человек далёкий от компа), либо автоматом жмёт ctrl+F, твой поиск вряд ли кто заметит.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
Zaman
Дата 12.12.2005, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



хочу сделать так как в Google реализовал у себя поиск на странице
PM MAIL   Вверх
Zaman
Дата 12.12.2005, 21:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



решил я эту задачку, топик можно закрыть
PM MAIL   Вверх
Sardar
Дата 13.12.2005, 02:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

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



А поделиться решением? smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
Zaman
Дата 13.12.2005, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Под IE везде есть, а вот сделал под FireFox и Opera
версия Лисы - 1.0.7, Opera - 8.5
Использовал Traversal API

Код

var filter=function(n)//пропускает те эл-ты которве не содержат в себе текста
           { 
              if((n.tagName=='IMG')||(n.tagName=='BR')||(n.tagName=='TABLE')||(n.tagName=='TR')||(n.tagName=='TBODY'))
                return NodeFilter.FILTER_SKIP;
              else
                return NodeFilter.FILTER_ACCEPT;     
           }


function findText()
{  
   var str='строке' 
   if (document.createTreeWalker)
   { 
     var TreeWalker=document.createTreeWalker   (document.body,NodeFilter.SHOW_ELEMENT,filter,false);       
     for(var i=TreeWalker.firstChild();i!=null;i=TreeWalker.nextNode())
     {         
          if (i.childNodes.length<=1)
          { 
             var str_Text=i.innerHTML.replace(str,'<font style="background-color: Lime;">'+str+'</font>');
             i.innerHTML=str_Text;
             TreeWalker.nextNode();
          }
     }
   }
}


М
 
Не забывай про теги code


Это сообщение отредактировал(а) Sardar - 13.12.2005, 18:25
PM MAIL   Вверх
Sardar
Дата 13.12.2005, 18:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

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



Цитата(Zaman @ 13.12.2005, 16:44)
Использовал Traversal API

Перебор можно и в ручную сделать, ты не обошёл слабое место - поиск по тексту а не по разметке smile


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


 




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


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

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