h5搜索功能


<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>沒毛病</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <meta name="apple-mobile-web-app-capable" content="no">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <meta name="format-detection" content="telephone=no">
</head>
<body>
<input class="" id="sec"><!--搜索框-->
<button id="search">搜索</button>

<!--歷史記錄-->
<div class="current">最近搜索</div>
<div class="delete history" style="width: 100%;float: left"></div>

<!--刪除按鈕-->
<div class="history" id="his-dele">X</div>

<script src="js/jquery-1.7.2.min.js"></script>
<script>

    /*搜索記錄相關*/

    var hisTime;//獲取搜索時間數組
    var hisItem;//獲取搜索內容數組
    var firstKey;//獲取最早的1個搜索時間

    function init (){
        hisTime = [];//時間數組置空
        hisItem = [];//內容數組置空

        for(var i = 0; i < localStorage.length; i++){//數據去重
            if(!isNaN(localStorage.key(i))){//判斷數據是否合法
                hisTime.push(localStorage.key(i));
            }
        }

        if(hisTime.length > 0) { //根據時間戳排序,翻轉
            hisTime.sort();//排序
       hisTime.reverse(); //翻轉
for (var y = 0; y < hisTime.length; y++) { localStorage.getItem(hisTime[y]).trim() && hisItem.push(localStorage.getItem(hisTime[y])); } } $(".delete").html("");//執行init(),每次清空之前添加的節點
     
for(var i = 0; i < hisItem.length; i++){ $(".delete").prepend('<div class="word-break">'+hisItem[i]+'</div>'); } } init();//調用   //點擊搜索 $("#search").click(function(){ var value = $("#sec").val(); var time = (new Date()).getTime(); //獲取當前時間戳 if(!value){ alert("你未輸入搜索內容"); return false; } //輸入的內容localStorage有記錄     //判斷數組中是否存在當前元素
   if($.inArray(value,hisItem) >= 0){ for(var j = 0; j < localStorage.length; j++){
          //如果存在移除
if(value == localStorage.getItem(localStorage.key(j))){ localStorage.removeItem(localStorage.key(j)); } } localStorage.setItem(time,value); }else{ localStorage.setItem(time,value); } init(); }); //清除記錄功能 $("#his-dele").click(function(){ var f = 0; $("history").html();
     init(); });

  
//蘋果手機不兼容出現input無法取值以下是解決方法
  $(
".delete" ).on( "click", ".word-break", function() {
     var div = $(this).text();
     $(
'#sec').val(div);
  });
</script>
</body>
</html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM