我想要一个只搜索我自己站点的搜索引擎。我目前有一些 JavaScript,但它只搜索特定页面上的单词。如果可能的话,我需要它来搜索我网站内的链接。
我无法使用 Google 搜索引擎,因为我的站点位于内部 Intranet 上。
<SCRIPT language=JavaScript>
var NS4 = (document.layers);
var IE4 = (document.all);
var win = window;
var n = 0;
function findInPage(str) {
var txt, i, found;
if (str == "")
return false;
if (NS4) {
if (!win.find(str))
while(win.find(str, false, true))
n++;
else
n++;
if (n == 0)
alert("Not found.");
}
if (IE4) {
txt = win.document.body.createTextRange();
for (i = 0; i <= n && (found = txt.findText(str)) != false; i++) {
txt.moveStart("character", 1);
txt.moveEnd("textedit");
}
if (found) {
txt.moveStart("character", -1);
txt.findText(str);
txt.select();
txt.scrollIntoView();
n++;
}
else {
if (n > 0) {
n = 0;
findInPage(str);
}
else
alert("Sorry, we couldn't find.Try again");
}
}
return false;
}
</SCRIPT>
(onsubmit="return findInPage(this.string.value); in the button tag.)
它非常适合搜索该页面,但我希望有一种方法可以搜索我网站上的所有页面。
最佳答案
一些建议:
- 除非您必须这样做,否则不要重新发明轮子 - 有开源库,例如 Tipue Search (Tipue Search) 等。
- 您可以使用 jquery/ajax $.load() 动态加载页面内容并搜索它们,同时就您的 DOM 和脚本而言仍停留在同一页面中。
- NodeJS 也是一个不错的选择,但可能有点过头了。
希望这对您有所帮助!
关于Javascript 搜索引擎(搜索自己的站点),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21386497/