Подскажите, пожалуйста, есть код чтобы вставить форму поиска по тексту для html-страницы без бд?
Вот есть:
<script type="text/javascript"> var lastResFind=""; // последний удачный результат var copy_page=""; // копия страницы в ихсодном виде function TrimStr(s) { s = s.replace( /^\s+/g, ''); return s.replace( /\s+$/g, ''); } function FindOnPage(inputId) {//ищет текст на странице, в параметр передается ID поля для ввода var obj = window.document.getElementById(inputId); var textToFind; if (obj) { textToFind = TrimStr(obj.value);//обрезаем пробелы } else { alert("Введенная фраза не найдена"); return; } if (textToFind == "") { alert("Вы ничего не ввели"); return; } if(document.body.innerHTML.indexOf(textToFind)=="-1") alert("Ничего не найдено, проверьте правильность ввода!"); if(copy_page.length>0) document.body.innerHTML=copy_page; else copy_page=document.body.innerHTML; document.body.innerHTML = document.body.innerHTML.replace(eval("/name="+lastResFind+"/gi")," ");//стираем предыдущие якори для скрола document.body.innerHTML = document.body.innerHTML.replace(eval("/"+textToFind+"/gi"),"<a name="+textToFind+" style='background:red'>"+textToFind+"</a>"); //Заменяем найденный текст ссылками с якорем; lastResFind=textToFind; // сохраняем фразу для поиска, чтобы в дальнейшем по ней стереть все ссылки window.location = '#'+textToFind;//перемещаем скрол к последнему найденному совпадению } </script>
<input type="text" id="text-to-find" value=""> <input type="button" onclick="javascript: FindOnPage('text-to-find'); return false;" value="Искать"/>
Первый вставляю в хед, второй в боди.
Там просто выделяются красным запрашиваемые слова. Методом прокручивания страницы можно на эти слова набрести.
А нужно чтобы сразу происходило прокручивание к этим словам.
Не знаю как, но с этим же самым кодом у меня в самый первый раз как-то получилось, что немного другая форма висела под панелью браузера, а не в странице. При вводе искомого текста, к нему происходила прокрутка и он выделялся зелёным.
Пару раз перезагрузил страницу и эта форма пропала.
Потом самыми разными вариантами вставлял эти коды, один раз ещё достиг нужно эффекта, и опять пропало.