寫的匆忙,示意一下,有待完善。把以下代碼復制到文本文件中,把文件擴展名改為.html就可以運行了。
代碼如下:
<html>
<head>
<style type="text/css">
.res
{
color: Red;
}
</style>
<script src="jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
var oldKey = "";
var index = -1;
var pos = new Array();
var oldCount = 0;
function search(flg) {
if (!flg) {
index++;
index = index == oldCount ? 0 : index;
}
else {
index--;
index = index < 0 ? oldCount - 1 : index;
}
$(".result").removeClass("res");
$("#toresult").remove();
var key = $("#key").val(); //取key值
if (!key) {
oldKey = "";
return; //key為空則退出
}
if (oldKey != key) {
//重置
index = 0;
$(".result").each(function () {
$(this).replaceWith($(this).html());
});
pos = new Array();
$("body").html($("body").html().replace(new RegExp(key, "gm"), "<span id='result" + index + "' class='result'>" + key + "</span>")); // 替換
$("#key").val(key);
oldKey = key;
$(".result").each(function () {
pos.push($(this).offset().top);
});
oldCount = $(".result").length;
}
$(".result:eq(" + index + ")").addClass("res");
$("body").scrollTop(pos[index]);
}
</script>
</head>
<body>
<div style="position: fixed; right: 20px; top: 0;">
<input id="key" type="text" style="width: 100px;" />
<input type="button" value="下一個" onclick="search()" />
<input type="button" value="上一個" onclick="search(1)" />
</div>
<div style="height: 50px;">
</div>
<div style="height: 200px;">
1待搜索的文本。
</div>
<div style="height: 200px;">
2待搜索的文本。
</div>
<div style="height: 200px;">
3待搜索的文本。
</div>
<div style="height: 200px;">
4待搜索的文本。
</div>
<div style="height: 200px;">
5待搜索的文本。
</div>
<div style="height: 200px;">
10美麗的家鄉。
</div>
<div style="height: 200px;">
11美麗的家鄉。
</div>
<div style="height: 200px;">
12美麗的家鄉。
</div>
<div style="height: 200px;">
13美麗的家鄉。
</div>
<div style="height: 200px;">
14美麗的家鄉。
</div>
<div style="height: 200px;">
15美麗的家鄉。
</div>
</body>
</html>
這裡主要是個大家提供一個思路,小伙伴們等不及的話就自己完善下吧。