全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

使用 Vue.js 仿百度搜索框的实例代码

整理文档,搜刮出一个使用 Vue.js 仿百度搜索框的实例代码,稍微整理精简一下做下分享。

<!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8">
  <title>Vue demo</title>
  <style type="text/css">
  .bg {
    background: #ccc;
  }
  </style>
  <script src="https://cdn.bootcss.com/vue/2.1.7/vue.min.js"></script>
  <script src="https://cdn.bootcss.com/vue-resource/1.3.1/vue-resource.min.js"></script>
  <script type="text/javascript">
  window.onload = function() {
    new Vue({
      el: '#box',
      data: {
        inputText: '',
        text: '',
        nowIndex: -1,
        result: []
      },
      methods: {
        show: function(ev) {
          if (ev.keyCode == 38 || ev.keyCode == 40) {
            if (this.nowIndex < -1){
              return;
            }
            if (this.nowIndex != this.result.length && this.nowIndex != -1) {
              this.inputText = this.result[this.nowIndex];
            }
            return;
          }
          if (ev.keyCode == 13) {
            window.open('https://www.baidu.com/s?wd=' + this.inputText, '_blank');
            this.inputText = '';
          }
          this.text = this.inputText;
          this.$http.jsonp('https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su', {
            params: {
              wd: this.inputText
            },
            jsonp: 'cb'
          }).then(res => {
            this.result = res.data.s;
          })
        },
        down: function() {
          this.nowIndex++;
          if (this.nowIndex == this.result.length) {
            this.nowIndex = -1;
            this.inputText = this.text;
          }
        },
        up: function() {
          this.nowIndex--;
          if (this.nowIndex < -1){
            this.nowIndex = -1;
            return;
          }
          if (this.nowIndex == -1) {
            this.nowIndex = this.result.length;
            this.inputText = this.text;
          }
        }
      }
    });
  }
  </script>
</head>

<body>
  <div id="box">
    <input type="text" placeholder="请输入搜索内容" v-model='inputText' @keyup='show($event)' @keydown.down='down()' @keydown.up.prevent='up()'>
    <ul>
      <li v-for="(item, index) in result" :class='{bg: index==nowIndex}'>
        {{item}}
      </li>
    </ul>
  </div>
</body>

</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# vue.js实现搜索功能  # vue.js搜索框  # 基于Vue.js实现简单搜索框  # vue.js实现含搜索的多种复选框(附源码)  # Vue.js实现实例搜索应用功能详细代码  # 基于Vue.js 2.0实现百度搜索框效果  # Django+Vue.js实现搜索功能  # 请输入  # 大家多多  # 百度搜索  # 文档  # src  # script  # https  # bootcss  # cdn  # css  # text  # bg  # ccc  # background  # window  # javascript  # onload  # el  # function  # vue 


相关文章: 建站之星如何助力企业快速打造五合一网站?  宝塔建站助手安装配置与建站模板使用全流程解析  成都网站制作报价公司,成都工业用气开户费用?  网站制作公司,橙子建站是合法的吗?  哈尔滨网站建设策划,哈尔滨电工证查询网站?  ui设计制作网站有哪些,手机UI设计网址吗?  广州顶尖建站服务:企业官网建设与SEO优化一体化方案  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  临沂网站制作公司有哪些,临沂第四中学官网?  高防服务器租用指南:配置选择与快速部署攻略  魔方云NAT建站如何实现端口转发?  制作门户网站的参考文献在哪,小说网站怎么建立?  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  公司网站建设制作费用,想建设一个属于自己的企业网站,该如何去做?  代刷网站制作软件,别人代刷火车票靠谱吗?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?  青岛网站设计制作公司,查询青岛招聘信息的网站有哪些?  如何通过宝塔面板实现本地网站访问?  导航网站建站方案与优化指南:一站式高效搭建技巧解析  如何在IIS中新建站点并配置端口与IP地址?  如何通过PHP快速构建高效问答网站功能?  建站之星备案是否影响网站上线时间?  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  如何选择域名并搭建高效网站?  建站主机是否等同于虚拟主机?  北京企业网站设计制作公司,北京铁路集团官方网站?  如何用wdcp快速搭建高效网站?  如何用y主机助手快速搭建网站?  深圳企业网站制作设计,在深圳如何网上全流程注册公司?  建站主机数据库如何配置才能提升网站性能?  如何在阿里云购买域名并搭建网站?  大连网站设计制作招聘信息,大连投诉网站有哪些?  如何通过远程VPS快速搭建个人网站?  网站制作公司广州有几家,广州尚艺美发学校网站是多少?  高端建站三要素:定制模板、企业官网与响应式设计优化  如何在阿里云服务器自主搭建网站?  如何用美橙互联一键搭建多站合一网站?  百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?  深圳网站制作培训,深圳哪些招聘网站比较好?  如何优化Golang Web性能_Golang HTTP服务器性能提升方法  如何在服务器上三步完成建站并提升流量?  公司网站的制作公司,企业网站制作基本流程有哪些?  如何选择可靠的免备案建站服务器?  如何用已有域名快速搭建网站?  如何在景安服务器上快速搭建个人网站?  宁波自助建站系统如何快速打造专业企业网站?  网站建设制作、微信公众号,公明人民医院怎么在网上预约? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。