js实现搜索提示框效果


Posted in Javascript onSeptember 05, 2020

本文实例为大家分享了js实现搜索提示框效果的具体代码,供大家参考,具体内容如下

首先写静态页面

<div class="container">
  <!-- 搜索框 -->
  <input type="text" id="search" />
  <!-- 动态提示的数据框liebia -->
  <div id="alert">
    <ul></ul>
  </div>
</div>

CSS样式

* {
  margin: 0;
  padding: 0;
}

html,
body {
  background: darkgray;
}

.container {
  position: absolute;
  left: 50%;
  top: 50px;
  transform: translateX(-50%);
}

#search {
  width: 300px;
  height: 50px;
  padding-left: 10px;
  border-radius: 5px;
  border: none;
  outline: none;
}

#alert {
  width: 312px;
  position: relative;
  left: -1px;
  display: none; /* 将ul列表隐藏 */
}

#alert > ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

#alert > ul > li {
  border: 0.5px solid #000;
  height: 40px;
  line-height: 40px;
  padding-left: 10px;
  border-radius: 5px;
  background: #fff;
}

#alert > ul:last-child {
  border-bottom: 1px solid #000;
}

JS代码

var $search = $("#search");
var $alert = $("#alert");
var $alertUl = $("#alert>ul");

// 清空列表的方法
function clearUl() {
  $alertUl.empty();
}

$search
  .bind("input", function () {
  // 清空列表
  clearUl();

  // 获取到用户所输入的内容
  var value = $(this).val();
  // console.log(value);

  // 使用getJSON方法获取json数据
  $.getJSON("data/server4.json", function (data) {
    // console.log(data);
    // 获取到json数据中的name值
    $.each(data, function (input, obj) {
      // console.log(obj);
      var name = obj.name;
      // console.log(name);

      if (name.indexOf(value) >= 0) {
        // 表示输入的内容在name中存在
        var valueArr = obj.value;
        // console.log(valueArr);
        $.each(valueArr, function (input, text) {
          // console.log(text);
          // 将数据添加到HTML页面
          $alertUl.append(`<li>${text}</li>`);
        });
      }
    });
  });

  // 将ul列表显示出来
  $alert.css("display", "block");
})
  .bind("blur", function () {
  $alert.css("display", "none");
});

实现效果

js实现搜索提示框效果

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

Javascript 相关文章推荐
浅谈javascript的数据类型检测
Jul 10 Javascript
基于jquery扩展漂亮的下拉框可以二次修改
Nov 19 Javascript
优化Node.js Web应用运行速度的10个技巧
Sep 03 Javascript
jQuery中slideUp()方法用法分析
Dec 24 Javascript
Knockout自定义绑定创建方法
Dec 26 Javascript
关于Javascript回调函数的一个妙用
Aug 29 Javascript
ES6使用let命令更简单的实现块级作用域实例分析
Mar 31 Javascript
JavaScript调试之console.log调试的一个小技巧分享
Aug 07 Javascript
原生javascript实现的全屏滚动功能示例
Sep 19 Javascript
JavaScript求一个数组中重复出现次数最多的元素及其下标位置示例
Jul 23 Javascript
Vue路由守卫之路由独享守卫
Sep 25 Javascript
redux处理异步action解决方案
Mar 22 Javascript
jQuery实现简单三级联动效果
Sep 05 #jQuery
javascript canvas实现简易时钟例子
Sep 05 #Javascript
vue中使用vue-pdf的方法详解
Sep 05 #Javascript
Angular+Ionic使用queryParams实现跳转页传值的方法
Sep 05 #Javascript
vue 将多个过滤器封装到一个文件中的代码详解
Sep 05 #Javascript
js实现可爱的气泡特效
Sep 05 #Javascript
js实现点击按钮随机生成背景颜色
Sep 05 #Javascript
You might like
深入array multisort排序原理的详解
2013/06/18 PHP
php截取html字符串及自动补全html标签的方法
2015/01/15 PHP
php中 $$str 中 &quot;$$&quot; 的详解
2015/07/06 PHP
php错误日志简单配置方法
2016/07/11 PHP
php静态成员方法和静态的成员属性的使用方法
2017/10/26 PHP
php常用的工具开发整理
2019/09/26 PHP
top.location.href 没有权限 解决方法
2008/08/05 Javascript
js 发个判断字符串是否为符合标准的函数
2009/04/27 Javascript
Extjs 继承Ext.data.Store不起作用原因分析及解决
2013/04/15 Javascript
js判断横竖屏及禁止浏览器滑动条示例
2014/04/29 Javascript
JavaScript控制浏览器全屏及各种浏览器全屏模式的方法、属性和事件
2015/12/20 Javascript
使用JS读取XML文件的方法
2016/11/25 Javascript
jQuery实现遮罩层登录对话框
2016/12/29 Javascript
jQuery Validate 校验多个相同name的方法
2017/05/18 jQuery
AngularJS 购物车全选/取消全选功能的实现方法
2017/08/14 Javascript
Angular4编程之表单响应功能示例
2017/12/13 Javascript
Angular实现的敏感文字自动过滤与提示功能示例
2017/12/29 Javascript
微信小程序实现两边小中间大的轮播效果的示例代码
2018/12/07 Javascript
antd组件Upload实现自己上传的实现示例
2018/12/18 Javascript
[10:53]2018DOTA2国际邀请赛寻真——EG
2018/08/11 DOTA
python 简易计算器程序,代码就几行
2009/08/29 Python
Python3实战之爬虫抓取网易云音乐的热门评论
2017/10/09 Python
如何使用Python的Requests包实现模拟登陆
2018/04/27 Python
wxpython绘制圆角窗体
2019/11/18 Python
使用python 将图片复制到系统剪贴中
2019/12/13 Python
Python实现图片识别加翻译功能
2019/12/26 Python
类成员函数的重载、覆盖和隐藏区别
2016/01/27 面试题
PyQt QMainWindow的使用示例
2021/03/24 Python
工厂采购员岗位职责
2014/04/08 职场文书
2014领导干部学习焦裕禄同志先进事迹思想汇报
2014/09/19 职场文书
民间借贷协议书范本
2014/10/01 职场文书
三孔导游词
2015/02/05 职场文书
小学教师教育随笔
2015/08/14 职场文书
2016年离婚协议书范文
2016/03/18 职场文书
PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
2021/04/16 PHP
基于Python实现的购物商城管理系统
2021/04/27 Python