Vue 仿百度搜索功能实现代码


Posted in Javascript onFebruary 16, 2017

无上下选择

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>jsonp</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="yes">
 <meta name="apple-mobile-web-app-status-bar-style" content="black">
 <script src="../js/Vue.js"></script>
 <script src="../js/vue-resource.js"></script>
 <script>
  window.onload = function(){
   var vm = new Vue({
    el:'#box',
    data:{
     myData:[],
     t1:''
    },
    methods:{
     get:function(){
      this.$http.jsonp('https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su',{
       wd:this.t1
      },{
       jsonp:'cb'
      }).then(function(res){
       this.myData=res.data.s
      },function(){
      });
     }
    }
   });
  }
 </script>
</head>
<body>
<div id="box">
 <input type="text" v-model="t1" @keyup="get()">
 <ul>
  <li v-for="value in myData">{{value}}</li>
 </ul>
 <p v-show="myData.length==0">暂无数据...</p>
</div>
</body>
</html>

加上上下选择

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>jsonp</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="yes">
 <meta name="apple-mobile-web-app-status-bar-style" content="black">
 <style>
  .gray{
   background: #ccc;
  }
 </style>
 <script src="../js/vue1.0.js"></script>
 <script src="../js/vue-resource.js"></script>
 <script>
  window.onload=function(){
   new Vue({
    el:'body',
    data:{
     myData:[],
     t1:'',
     now:-1
    },
    methods:{
     get:function(ev){
      if(ev.keyCode==38||ev.keyCode==40){
       return;
      }
      if(ev.keyCode==13){
       window.open('https://www.baidu.com/s?wd='+this.t1);
       this.t1='';
      }
      this.$http.jsonp('https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su',{
       wd:this.t1
      },{
       jsonp:'cb'
      }).then(function(res){
       this.myData=res.data.s;
      },function(){
      });
     },
     changeDown:function(){
      this.now++;
      if(this.now==this.myData.length)this.now=-1;
      this.t1=this.myData[this.now];
     },
     changeUp:function(){
      this.now--;
      if(this.now==-2)this.now=this.myData.length-1;
      this.t1=this.myData[this.now];
     }
    }
   });
  };
 </script>
</head>
<body>
<div id="box">
 <input type="text" v-model="t1" @keyup="get($event)" @keydown.down="changeDown()" @keydown.up.prevent="changeUp()">
 <ul>
  <li v-for="value in myData" :class="{gray:$index==now}">{{value}}</li>
 </ul>
 <p v-show="myData.length==0">暂无数据...</p>
</div>
</body>
</html>

以上所述是小编给大家介绍的Vue 仿百度搜索功能实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jquery 插件 任意位置浮动固定层
Dec 25 Javascript
将input file的选择的文件清空的两种解决方案
Oct 21 Javascript
Jquery validation remote 验证的缓存问题解决方法
Mar 25 Javascript
JavaScript 表单处理实现代码
Apr 13 Javascript
jQuery插件windowScroll实现单屏滚动特效
Jul 14 Javascript
关于javascript中dataset的问题小结
Nov 16 Javascript
jQuery实现的精美平滑二级下拉菜单效果代码
Mar 28 Javascript
jQuery实现每隔一段时间自动更换样式的方法分析
May 03 jQuery
jquery分页优化操作实例分析
Aug 23 jQuery
JavaScript事件循环及宏任务微任务原理解析
Sep 02 Javascript
vue实现Toast组件轻提示
Apr 10 Vue.js
关于vue-router-link选择样式设置
Apr 30 Vue.js
javascript实现秒表计时器的制作方法
Feb 16 #Javascript
jQuery实现搜索页面关键字的功能
Feb 16 #Javascript
canvas时钟效果
Feb 16 #Javascript
支持移动端原生js轮播图
Feb 16 #Javascript
jQuery为DOM动态追加事件的方法
Feb 16 #Javascript
纯js实现html转pdf的简单实例(推荐)
Feb 16 #Javascript
jq给页面添加覆盖层遮罩的实例
Feb 16 #Javascript
You might like
PHP PDOStatement::setAttribute讲解
2019/02/01 PHP
创建一个复制UBB软件信息的链接或按钮的js代码
2008/01/06 Javascript
小试JQuery的AutoComplete插件
2011/05/04 Javascript
仿百度联盟对联广告实现代码
2014/08/30 Javascript
莱鸟介绍javascript onclick事件
2016/01/06 Javascript
JavaScript实现弹出模态窗体并接受传值的方法
2016/02/12 Javascript
在JavaScript中使用JSON数据
2016/02/15 Javascript
node.js入门学习之url模块
2017/02/25 Javascript
浅谈javascript的url参数parse和build函数
2017/03/04 Javascript
基于Vue开发数字输入框组件
2017/12/19 Javascript
JS实现自定义弹窗功能
2018/08/08 Javascript
微信小程序 wepy框架与iview-weapp的用法详解
2019/04/10 Javascript
js的继承方法小结(prototype、call、apply)(推荐)
2019/04/17 Javascript
JavaScript中的this原理及6种常见使用场景详解
2020/02/14 Javascript
树莓派+摄像头实现对移动物体的检测
2019/06/22 Python
Python上下文管理器全实例详解
2019/11/12 Python
Python3实现将一维数组按标准长度分隔为二维数组
2019/11/29 Python
Python enumerate函数遍历数据对象组合过程解析
2019/12/11 Python
django 模型中的计算字段实例
2020/05/19 Python
Django Path转换器自定义及正则代码实例
2020/05/29 Python
Python使用requests模块爬取百度翻译
2020/08/25 Python
python 获取剪切板内容的两种方法
2020/11/28 Python
纯CSS3+DIV实现小三角形边框效果的示例代码
2020/08/03 HTML / CSS
法国低价在线宠物商店:bitiba.fr
2020/07/03 全球购物
民生工作实施方案
2014/05/31 职场文书
关心下一代工作先进事迹
2014/08/15 职场文书
刑事上诉状范文
2015/05/22 职场文书
亮剑观后感
2015/06/05 职场文书
学习十八大的感悟
2015/08/11 职场文书
2016大学生暑期社会实践心得体会
2016/01/14 职场文书
求职自荐信该如何书写?
2019/06/24 职场文书
Redis5之后版本的高可用集群搭建的实现
2021/04/27 Redis
Python数据类型最全知识总结
2021/05/31 Python
tp5使用layui实现多个图片上传(带附件选择)的方法实例
2021/11/17 PHP
Win11控制面板快捷键是什么?Win11打开控制面板的方法汇总
2022/07/07 数码科技
MySQL 原理优化之Group By的优化技巧
2022/08/14 MySQL