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

发布时间 - 2026-01-11 01:03:11    点击率:

整理文档,搜刮出一个使用 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 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在香港服务器上快速搭建免备案网站?  敲碗10年!Mac系列传将迎来「触控与联网」双革新  html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】  手机网站制作与建设方案,手机网站如何建设?  Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践  js实现点击每个li节点,都弹出其文本值及修改  如何用JavaScript实现文本编辑器_光标和选区怎么处理  Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制  Laravel Docker环境搭建教程_Laravel Sail使用指南  javascript日期怎么处理_如何格式化输出  如何用美橙互联一键搭建多站合一网站?  Laravel怎么做数据加密_Laravel内置Crypt门面的加密与解密功能  Laravel如何集成Inertia.js与Vue/React?(安装配置)  如何批量查询域名的建站时间记录?  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  详解Android图表 MPAndroidChart折线图  大学网站设计制作软件有哪些,如何将网站制作成自己app?  Android实现代码画虚线边框背景效果  html5的keygen标签为什么废弃_替代方案说明【解答】  Angular 表单中正确绑定输入值以确保提交与验证正常工作  Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置  Laravel怎么调用外部API_Laravel Http Client客户端使用  百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  Laravel如何处理和验证JSON类型的数据库字段  Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优  专业商城网站制作公司有哪些,pi商城官网是哪个?  Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】  原生JS实现图片轮播切换效果  Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】  如何用好域名打造高点击率的自主建站?  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  如何快速搭建个人网站并优化SEO?  个人摄影网站制作流程,摄影爱好者都去什么网站?  黑客如何利用漏洞与弱口令入侵网站服务器?  千库网官网入口推荐 千库网设计创意平台入口  如何用PHP工具快速搭建高效网站?  Laravel用户密码怎么加密_Laravel Hash门面使用教程  JavaScript数据类型有哪些_如何准确判断一个变量的类型  怎么用AI帮你为初创公司进行市场定位分析?  bing浏览器学术搜索入口_bing学术文献检索地址  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  C#如何调用原生C++ COM对象详解  独立制作一个网站多少钱,建立网站需要花多少钱?  教学论文网站制作软件有哪些,写论文用什么软件 ?  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  Win11怎么设置默认图片查看器_Windows11照片应用关联设置  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口  微信小程序 HTTPS报错整理常见问题及解决方案