JS-поиск по содержимому страницы.
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
RE: AJAX-поиск по содержимому страницы. - 2010-01-21 11:07:29.613333
|
|
|
Papa James
Сообщений: 438
Оценки: 0
Присоединился: 2009-12-07 13:36:18.370000
|
Ну тут и ajax не нужон. Просто javascript-oм ищешь нужные слова, просматривая dom. Хотя это геморно и при большой странице будет жесть…. А чтоб подсвечивалось - втавляешь найденное слово в span с желтым цветом. Но лучше, конечно, делать это на сервере (быстрее будет)
|
|
|
RE: AJAX-поиск по содержимому страницы. - 2010-01-21 11:09:48.610000
|
|
|
Слесарь_теоретик
Сообщений: 277
Оценки: 0
Присоединился: 2009-12-02 17:27:29.996666
|
Я прекрасно понимаю принцип реализации этого. Я же в самом начале написал, что мне код нужен, а не теоретическое пошаговое описание работы скрипта.
|
|
|
RE: AJAX-поиск по содержимому страницы. - 2010-01-21 11:49:59.990000
|
|
|
Papa James
Сообщений: 438
Оценки: 0
Присоединился: 2009-12-07 13:36:18.370000
|
на jquery примерно так будет
var word = "слово";
$('*').each(function() {
var text = $(this).text();
var index = text.indexOf(word);
if (index) {
//вставляешь элемент в позицию для выделения
}
});
Примерно так, не проверял рботу
|
|
|
RE: AJAX-поиск по содержимому страницы. - 2010-01-21 12:17:00.940000
|
|
|
Слесарь_теоретик
Сообщений: 277
Оценки: 0
Присоединился: 2009-12-02 17:27:29.996666
|
Короче, нашел я похожий скрипт, но он не так совершенен, как мне бы хотелось. Можно проверить работу на сайте: http://strategia.net.ua/ Бесит 3 момента поиска: 1. основних type=text {95919BE0-C436-4eab-8083-096E94826667}="основних"> - строка появляется после того, как нажимаю "Поиск". 2. Чувствительность к регистру искомого текста. 3. При попытке поиска другого текста старый текст по-прежнему остается выделеным. Вот сам код: <sсriрt type="text/javasсriрt">
function searchTextOnPage(inputId) {
var obj = window.document.getElementById(inputId);
var textToFind;
if (obj) {
textToFind = obj.value;
} else {
alert("Не могу найти текст = " + inputId);
return;
}
if (textToFind == "") {
alert("Вы ничего не ввели");
return;
}
document.bоdу.innerHTML = document.bоdу.innerHTML.replace(eval("/"+textToFind+"/g"),"<b style='color:red; text-transform:uppercase;'>"+textToFind+"</b>");
var obj = window.document.getElementById(inputId);
obj.value = textToFind;
}
</sсriрt>
<input type="text" id="text-to-find"> <input type="button" value="Поиск" оnclick="javasсriрt: searchTextOnPage('text-to-find'); return false;"/> Подскажите, пожалуйста, как убрать то, что я описал выше.
|
|
|
RE: AJAX-поиск по содержимому страницы. - 2010-01-21 13:06:42.310000
|
|
|
Papa James
Сообщений: 438
Оценки: 0
Присоединился: 2009-12-07 13:36:18.370000
|
1 - не понял что-то… 2 - добавь флаг /i при replace после /g 3 - заменяй не на <b style='color:red; text-transform:uppercase;'> , а, например <b class='qqqq'> Потом перед поиском удаляй их, а вставляй содержимое
|
|
|
RE: AJAX-поиск по содержимому страницы. - 2010-01-21 14:05:40.136666
|
|
|
Papa James
Сообщений: 438
Оценки: 0
Присоединился: 2009-12-07 13:36:18.370000
|
Щас вообще не работает нигде. )) 1 пункт - зачем ты в скрипте в последней строчке значение в инпут пихаешь? По 3 пункту - лучше храни в глобальной переменной, последнее значение поиска и заменяй <b style='color:red; text-transform:uppercase;'>text</b> на text - проще, но не особо верно. И нафиг eval делать вообще?
|
|
|
RE: AJAX-поиск по содержимому страницы. - 2010-01-21 14:09:32.333333
|
|
|
Слесарь_теоретик
Сообщений: 277
Оценки: 0
Присоединился: 2009-12-02 17:27:29.996666
|
Я сделаю так, как мне посоветут, лишь бы работало все. Сейчас хоть решил проблему с чувствительностью к регистру.
|
|
|
RE: AJAX-поиск по содержимому страницы. - 2010-01-21 14:36:26.473333
|
|
|
codeismy.name
Сообщений: 618
Оценки: 0
Присоединился: 2009-07-19 00:30:13.200000
|
уже давно по этой теме писал статью http://codeismy.name/stati/javascript/javascript-poisk-po-stranice/ вот можеш почитать может поможет :)
|
|
|
RE: AJAX-поиск по содержимому страницы. - 2010-01-21 15:09:50.953333
|
|
|
Слесарь_теоретик
Сообщений: 277
Оценки: 0
Присоединился: 2009-12-02 17:27:29.996666
|
quote:
ORIGINAL: codeismy.name уже давно по этой теме писал статью http://codeismy.name/stati/javascript/javascript-poisk-po-stranice/ вот можеш почитать может поможет :) Гениально. Вот только скрипт я и брал с твоего сайта.
|
|
|
|
|