js Cookie の使用法を検索したところ、その多くが間違っているか、使用法が非常に古く、コードが簡潔に書かれていないことがわかりました。最後に、自分でやってみて、この需要は非常に一般的であると結論付けて記録しました
var historyCount = 15; //保存历史记录个数 /** * 增加浏览历史记录 * @return */ function setHistory(keyWord) { var keyWords = $.cookie('keyWord'); if (keyWords) { if(keyWord) { var keys = keyWords.split(","); for (var i = keys.length - 1; i >= 0; i--) { if (keys[i] == keyWord) { keys.splice(i, 1); } } keys.push(keyWord); if (keys.length >= historyCount) { //删除最开始的多余记录 var count = keys.length - historyCount + 1; //需要删除的个数 keys.splice(0, count); //开始位置,删除个数 } $.cookie('keyWord', keys.join(','), {expires: 365, path: '/'}); } } else { $.cookie('keyWord', keyWord, {expires: 365, path: '/'}); } } function delHistory(){ $.cookie("keyWord",null,{path:"/",expires: -1}); } function getHistory(){ var keyWords = $.cookie('keyWord'); if(keyWords) { var keys= keyWords.split(","); var length = keys.length; if (length > 0) { $("#historyRecord").empty(); var htmlString = "<dt>历史搜索</dt><dd>"; for (var i = length - 1; i >= 0; i--) { htmlString += "<a href='javascript:;' >" + keys[i] + "</a>"; } htmlString += "</dd>"; $("#historyRecord").html(htmlString) } } }