• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >vue > 使用 Vue.js 仿百度搜索框的实例代码

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

作者:与蟒唯舞 字体:[增加 减小] 来源:互联网 时间:2017-05-30

本文主要包含vue.js项目实例,vue.js实例,vue.js实例教程,vue.js做的一些实例,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>
</div>

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

</div>

您可能想查找下面的文章:

  • vue打包项目后正确显示图片
  • vue.js实现价格格式化的方法
  • vue.js 左侧二级菜单显示与隐藏切换的实例代码
  • Vue.js鼠标悬浮更换图片功能
  • vue.js实现用户评论、登录、注册、及修改信息功能
  • vue.js 初体验之Chrome 插件开发实录
  • 使用 Vue.js 仿百度搜索框的实例代码
  • Vue.js在使用中的一些注意知识点
  • vue调用高德地图实例代码
  • Vue.js 2.0 移动端拍照压缩图片预览及上传实例

相关文章

  • 2017-05-30详解使用vue脚手架工具搭建vue-webpack项目
  • 2017-05-30详解vue的数据binding绑定原理
  • 2017-05-30JavaScript之Vue.js【入门基础】
  • 2017-05-30Vue.js 2.0 和 React、Augular等其他前端框架大比拼
  • 2017-05-30详解Vue.js入门环境搭建
  • 2017-05-30Vue.js表单控件实践
  • 2017-05-30如何使用vuejs实现更好的Form validation?
  • 2017-05-30Vue.js之slot深度复制详解
  • 2017-05-30关于Vue.js一些问题和思考学习笔记(1)
  • 2017-05-30利用纯Vue.js构建Bootstrap组件

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • Vue 仿百度搜索功能实现代码
    • vue2 前后端分离项目ajax跨域session问题解决方法
    • VUE 移动端适配:VUE-CLI 3 添加 flexible 及 px2rem
    • Vuejs第十篇之vuejs父子组件通信
    • 详解VueJs前后端分离跨域问题
    • 关于vue.js弹窗组件的知识点总结
    • Vue.js系列之项目搭建(1)
    • VUE JS 使用组件实现双向绑定的示例代码
    • Vue.js 父子组件通讯开发实例
    • Vue获取DOM元素样式和样式更改示例

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有