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 相关文章推荐
Javascript面向对象扩展库代码分享
Mar 27 Javascript
javascript的动态加载、缓存、更新以及复用(一)
Jun 09 Javascript
jquery序列化表单以及回调函数的使用示例
Jul 02 Javascript
浅析javascript操作 cookie对象
Dec 26 Javascript
JavaScript实现16进制颜色值转RGB的方法
Feb 09 Javascript
JS实现简单的图书馆享元模式实例
Jun 30 Javascript
js获取表格的行数和列数的方法
Oct 23 Javascript
javascript手风琴下拉菜单实现代码
Nov 12 Javascript
全面了解js中的script标签
Jul 04 Javascript
Angular2库初探
Mar 01 Javascript
Node中使用ES6语法的基础教程
Jan 05 Javascript
layui实现下拉框三级联动
Jul 26 Javascript
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
yii框架搜索分页modle写法
2016/12/19 PHP
PHP实现的函数重载功能示例
2018/08/03 PHP
PHP whois查询类定义与用法示例
2019/04/03 PHP
扩展Jquery插件处理mouseover时内部有子元素时发生样式闪烁
2011/12/08 Javascript
jQuery简单实现验证邮箱格式
2015/07/15 Javascript
jQuery获取URL请求参数的方法
2015/07/18 Javascript
使用Function.apply()的参数数组化来提高 JavaScript程序性能的技巧
2015/12/23 Javascript
jquery实现倒计时功能
2015/12/28 Javascript
jQuery Html控件基本操作(日常收集整理)
2016/03/11 Javascript
详解Angular开发中的登陆与身份验证
2016/07/27 Javascript
js实现模糊匹配功能
2017/02/15 Javascript
JS实现禁止用户使用Ctrl+鼠标滚轮缩放网页的方法
2017/04/28 Javascript
nodejs读取本地中文json文件出现乱码解决方法
2018/10/10 NodeJs
VsCode与Node.js知识点详解
2019/09/05 Javascript
深入了解JavaScript 防抖和节流
2019/09/12 Javascript
vue单应用在ios系统中实现微信分享功能操作
2020/09/07 Javascript
在vue中使用vant TreeSelect分类选择组件操作
2020/11/02 Javascript
Python赋值语句后逗号的作用分析
2015/06/08 Python
使用Python实现一个栈判断括号是否平衡
2018/08/23 Python
python中的print()输出
2019/04/12 Python
python flask解析json数据不完整的解决方法
2019/05/26 Python
Python使用matplotlib 画矩形的三种方式分析
2019/10/31 Python
python爬虫构建代理ip池抓取数据库的示例代码
2020/09/22 Python
python中K-means算法基础知识点
2021/01/25 Python
美国演唱会和体育门票购买网站:Ticketnetwork
2018/10/19 全球购物
洛佩桑酒店官方网站:Lopesan Hotels
2019/04/15 全球购物
网络技术支持面试题
2013/04/22 面试题
电大会计学自我鉴定
2014/02/06 职场文书
《假如》教学反思
2014/04/17 职场文书
房地产推广策划方案
2014/05/19 职场文书
参赛口号
2014/06/16 职场文书
小学感恩教育活动总结
2014/07/07 职场文书
党员领导干部民主生活会批评与自我批评发言
2014/09/28 职场文书
《家世》读后感:看家训的力量
2019/12/30 职场文书
用CSS3画一个爱心
2021/04/27 HTML / CSS
vue实力踩坑之push当前页无效
2022/04/10 Vue.js