1. 设置他的css样式
  2. <h2>历史搜索</h2>
  3. <input type="text" name="" id="app">
  4. <div id="container"></div>
  5. <script>
  6. var historys = [];
  7. //event获取输入框的值
  8. $("app").keyup(function(event){
  9. if(event.keyCode ==13){
  10. //console.log(event)
  11. var value = $(this).val();
  12. if(value){
  13. // 只有数组中不包含搜索的值,才添加
  14. if(!historys.includes(value)){
  15. historys.unshift(value);
  16. $("#container").prepend(`<button>${value}</button>`)
  17. console.log(historys)
  18. $("#app").val("")
  19. }else{
  20. // 数组中存在的值,至于数组的顶部
  21. console.log(value)
  22. var index = historys.indexOf(value);
  23. // 删除他的下标
  24. historys.splice(index,1);
  25. // 将下标放在顶部位置
  26. historys.unshift(value)
  27. console.log(historys)
  28. $("#container button").eq(index).remove();
  29. $("#container").prepend(`<button>${value}</button>`)
  30. $("#app").val("");
  31. }
  32. }
  33. }
  34. })
  35. </script>

方法二

  1. <h2>历史搜索</h2>
  2. <input type="text" id="input">
  3. <div id="container"></div>
  4. <script>
  5. var historys = []
  6. // 回车获取输入框的值
  7. $("#input").keyup(function(event){
  8. if(event.keyCode==13){
  9. var value = $(this).val();
  10. if(value){
  11. // 只有数组中没有才添加
  12. if(!historys.includes(value)){
  13. historys.unshift(value);
  14. $("#container").prepend(`<button>${value}</button>`)
  15. console.log(historys)
  16. $("#input").val("")
  17. }else{
  18. // 将数组中存在的值放在第一个
  19. console.log(value)
  20. var index = historys.indexOf(value)
  21. historys.splice(index,1)
  22. historys.unshift(value)
  23. console.log(historys)
  24. $("#container button").eq(index).remove();
  25. $("#container").prepend(`<button>${value}</button>`)
  26. $("#input").val("")
  27. }
  28. }
  29. }
  30. })
  31. </script>

搜索的内容显示再最前面

  1. <input type="text" id="app">
  2. <script>
  3. // 让数组中被搜索的值至于顶部
  4. var arr= ["html","css","js","vue","react"]
  5. $("#app").keyup(function(event){
  6. if(event.keyCode==13){
  7. var value = $(this).val();
  8. if(arr.indexOf(value)!=-1){
  9. console.log(value)
  10. var index = arr.indexOf(value);
  11. arr.splice(index,1);
  12. arr.unshift(value);
  13. console.log(arr);
  14. }
  15. }
  16. })
  17. </script>