js实现仿百度搜索框自动提示功能

提示:touppercase()方法用于把字符串小写字母转换成大写

<input type="text" id="myInput" placeholder="搜索..." onkeyup="myFunction()">
<ul id="myUL">
  <li><a class="header" href="#">A</a></li>
  <li><a href="#">able</a></li>
  <li><a href="#">acet</a></li>
  <li><a href="#">activet</a></li>
  
  <li><a class="header" href="#">B</a></li>
  <li><a href="#">be</a></li>
  <li><a href="#">belive</a></li>
  <li><a href="#">back</a></li>
  
  <li><a class="header" href="#">C</a></li>
  <li><a href="#">car</a></li>
  <li><a href="#">cont</a></li>
  <li><a href="#">color</a></li>
  
  <li><a class="header" href="#">D</a></li>
  <li><a href="#">dog</a></li>
  <li><a href="#">desk</a></li>
  <li><a href="#">dection</a></li>
</ul>
#myInput{
   background: url(https://static.runoob.com/images/mix/searchicon.png)no-repeat;
   background-position:10px 11px;
   padding:12px 20px 12px 40px;
   border: 1px solid #ddd; 
   font-size:16px;
   margin-bottom: 12px; 
   width:100%;
}
#myUL{
  list-style:none;
  padding:0;
  margin:0
}
#myUL li a{
  text-decoration:none;
  color:black;
  border:1px solid #ddd;
  background-color:#f6f6f6;
  padding:12px;
  font-size:18px;
  display:block;
  margin-top:-1;
}
#myUL li a.header{
  background-color:#e2e2e2;
}
#myUL li a:hover:not(.header){
  background-color:#eee;
}
function myFunction(){
  var li,a,i,input,filter,ul;
  input=document.getElementById("myInput");
  ul=document.getElementById("myUL");
  li=ul.getElementsByTagName("li");
  filter=input.value.toUpperCase();
  //循环所有列表
  for(i=0;i<li.length;i++){
    a=li[i].getElementsByTagName("a")[0];
    if(a.innerHTML.toUpperCase().indexOf(filter)>-1){
      li[i].style.display="";
    }else{
      li[i].style.display="none";
    }
  }
   
  
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值