最近模板兔给一个客户开发一个功能就是文章正文里搜索关键词并标红且自动定位到关键词位置,当有多个相同关键词时,点一下就下移一个关键词。
js代码示例:
var content_search_key = 0; $("#content_search_key").focus(function(){ document.onkeydown = function() { if (event.keyCode == 13) { $("#content_search_btn").click(); } } }); $("#content_search_key").blur(function(){ document.onkeydown=null; }); $("#content_search_btn").click(function(){ var search_key = $.trim($("#content_search_key").val()); if(search_key){ //console.log(content_search_key); $("span.searched").removeClass("searched"); replaceText(document.getElementById('article-content'), search_key, "span", "searched"); if($(".article-content span.searched").length){ $('body,html').animate({scrollTop: $(".article-content span.searched:eq("+content_search_key+")").offset().top-250+"px"}, 500); content_search_key ++; if(content_search_key >= $(".article-content span.searched").length){ content_search_key = 0; } }else if($(".article-content p:contains('"+search_key+"')").length){ $('body,html').animate({scrollTop: $(".article-content p:contains('"+search_key+"')").offset().top-250+"px"}, 500); } } });
2 个评论