jquery 如何查找当前页面的字符串并定位到那个字符串位置呢?_html/css_WEB-ITnose

WBOY
풀어 주다: 2016-06-24 11:44:49
원래의
2019명이 탐색했습니다.

jquery 如何查找当前页面的字符串并定位到那个字符串位置呢?如果找不到的话,提示没有找到。有点类似浏览器的Ctrl+f 功能,求解,谢谢大家。之前写了一个,但是不兼容谷歌浏览器


回复讨论(解决方案)

直接对document进行indexOf

直接对document进行indexOf



怎么定位呢?


直接对document进行indexOf



怎么定位呢?
搜索到了之后改变搜索元素的颜色。就行了

    <script> <br /> $(function () { <br /> $("#find").click(function () { <br /> clearSelection(); <br /> var searchText = $("#keyword").val(); <br /> var regExp = new RegExp(searchText, 'g'); //创建正则表达式,g表示全局的,如果不用g,则查找到第一个就不会继续向下查找了; <br /> $('p').each(function () { <br /> var html = $(this).html(); <br /> var newHtml = html.replace(regExp, '<span class="highlight">' + searchText + ''); //将找到的关键字替换,加上highlight属性; <br /> <br /> $(this).html(newHtml); //更新; <br /> flag = 1; <br /> }); <br /> <br /> <br /> var ele = $(".highlight").eq(0); <br /> var top = ele.offset().top; <br /> $('html,body').animate({ scrollTop: top }, 300); <br /> }) <br /> }) <br /> <br /> function clearSelection() { <br /> $('p').each(function () { <br /> //找到所有highlight属性的元素; <br /> $(this).find('.highlight').each(function () { <br /> $(this).replaceWith($(this).text()); //将他们的属性去掉; <br /> }); <br /> }); <br /> } <br /> </script>


虽然没找到答案,我自己解决了,我贴出来吧

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿