1 回答
TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個(gè)贊
如果您希望搜索結(jié)果僅出現(xiàn)在單獨(dú)的頁面上,則您將希望搜索表單具有指向它的操作。該術(shù)語將被傳遞到該頁面,然后該頁面可以對(duì)其進(jìn)行處理并顯示搜索結(jié)果。
該模板演示了這個(gè)確切的流程:
現(xiàn)場(chǎng)演示: https: //long-pig.cloudvent.net/
這是一個(gè)非常好的解決方案,因?yàn)槟木W(wǎng)站查看者只需在執(zhí)行搜索時(shí)加載并運(yùn)行該代碼,這對(duì)于合理大小的索引來說可以節(jié)省大量成本。
用上面的代碼粗略地復(fù)制它:
從{% include search-lunr.html %}您的index.html.
把這個(gè)放在index.html:
<form action="{{ site.baseurl }}/search/" method="get">
<input type="text" name="q">
<input type="submit" value="Search">
</form>
然后在你的search.html:
...
{% include search-lunr.html %}
<script>
function getQueryVariable(variable) {
var query = window.location.search.substring(1),
vars = query.split("&");
for (var i = 0; i < vars.length; i++) {
var pair = vars[i].split("=");
if (pair[0] === variable) {
return decodeURIComponent(pair[1].replace(/\+/g, '%20')).trim();
}
}
}
var query = decodeURIComponent((getQueryVariable("q") || "").replace(/\+/g, "%20"));
lunr_search(query);
</script>
...
- 1 回答
- 0 關(guān)注
- 190 瀏覽
添加回答
舉報(bào)
