Итак, у меня есть список документов с 2000 плюс записи. Я хочу добавить некоторую форму функциональности поиска. Очевидно, у меня есть строка ввода, но как мне написать javascript, который ищет страницу и ScrollTo в этом месте?
Вы можете использовать window.find и range.findText
<input id="search" > <input type="button" value="search" onclick="fx(document.getElementById('search'))"> <script type="text/javascript"> <!-- function fx(o) { var _o=o; if(window.find) { _o.style.visibility='hidden'; setTimeout(function(){window.find(_o.value);_o.style.visibility='visible';},10); } else if(document.body.createTextRange) { var rng=document.body.createTextRange(); rng.findText(o.value); rng.select(); } } //--> </script>
Перебирайте элементы, которые хотите найти. Шагайте рекурсивно через дочерние узлы и ищите каждый с регулярным выражением, вероятно, что-то вроде /\bTERM\b/.
/\bTERM\b/
Когда вы найдете его, найдите его положение смещения, а затем scrollTo() это смещение.
scrollTo()