仿百度搜索框demo

<!doctype html>
  <head>
    <meta http-equiv='Content-Type' content='text/html; charset=utf-8' />
    <title> 搜索框 DEMO </title>
    <style>
      input {
        height: 24px;
        width: 535px;
        font-size: 20px;
      }
      table {
        font-family: '微软雅黑', '宋体', '黑体';
      }
      td {
        background-color: rgb(249,252,255);
        height: 24px;
        width: 535px;
      }
      td:hover {
        background-color: rgb(168,213,252);
        cursor: default;
      }
    </style>
  </head>

  <body>
    <input type='text' id='txt' />
    <table cellpadding='2' cellspacing='0'>
      <tbody>
        <tr><td></td></tr>
        <tr><td></td></tr>
        <tr><td></td></tr>
        <tr><td></td></tr>
        <tr><td></td></tr>
        <tr><td></td></tr>
        <tr><td></td></tr>
        <tr><td></td></tr>
        <tr><td></td></tr>
        <tr><td></td></tr>
      </tbody>
    </table>

    <script>
      function hideTds() {
        var tds = document.querySelectorAll('td');
        for (var i = 0; i < 10; i++) {
          tds[i].style.display = 'none';
        }
      }
      hideTds();
      document.querySelector('#txt').onkeyup = function() {
        var tds = document.querySelectorAll('td');
        for (var i = 0; i < 10; i++) {
          tds[i].innerHTML = '';
        }
        hideTds();
        if (this.value.trim() === '') {
          return;
        }

        var s = document.createElement('script');
        s.src = 'http://unionsug.baidu.com/su?wd=' + encodeURI(this.value.trim()) + '&p=3&cb=fn';
        document.body.appendChild(s);
      };
      function fn(data) {
        var tds = document.querySelectorAll('td');
        data.s.forEach(function(item, index) {
          tds[index].style.display = '';
          tds[index].innerHTML = item;
        });
        // delete scripts
        var s = document.querySelectorAll('script');
        for (var i = 1, len = s.length; i < len; i++) {
          document.body.removeChild(s[i]);
        }
      }
      document.querySelector('tbody').onclick = function(e) {
        var wd = e.target.innerHTML;
        window.open('https://www.baidu.com/s?word=' + encodeURI(wd));
      };
      document.onclick = function(e) {
        if (e.target === document.body) {
          hideTds();
        }
      }
    </script>
  </body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值