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 相关文章推荐
jQuery 核心函数以及jQuery对象
Mar 23 Javascript
修改jQuery Validation里默认的验证方法
Feb 14 Javascript
利用CSS、JavaScript及Ajax实现高效的图片预加载
Oct 16 Javascript
超简单JS二级、多级联动的简单实例
Feb 18 Javascript
jQuery实现多级下拉菜单jDropMenu的方法
Aug 28 Javascript
jquery实现简单文字提示效果
Dec 02 Javascript
基于javascript实现泡泡大冒险网页版小游戏
Mar 23 Javascript
TinyMCE汉化及本地上传图片功能实例详解
May 31 Javascript
微信小程序图片右边加两行文字的代码
Apr 23 Javascript
JavaScript undefined及null区别实例解析
Jul 21 Javascript
微信小程序实现上传照片代码实例解析
Aug 04 Javascript
在vue中import()语法不能传入变量的问题及解决
Apr 01 Vue.js
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
PHP判断远程图片或文件是否存在的实现代码
2014/02/20 PHP
CI框架验证码CAPTCHA辅助函数用法实例
2014/11/05 PHP
JavaScript中的new的使用方法与注意事项
2007/05/16 Javascript
js的写法基础分析
2011/01/17 Javascript
用js的document.write输出的广告无阻塞加载的方法
2014/06/05 Javascript
jQuery显示和隐藏 常用的状态判断方法
2015/01/29 Javascript
javascript与css3动画结合使用小结
2015/03/11 Javascript
Jquery实现跨域异步上传文件总结
2017/02/03 Javascript
微信小程序自定义tabBar组件开发详解
2020/09/24 Javascript
微信小程序实现两个页面传值的方法分析
2018/12/11 Javascript
6行代码实现微信小程序页面返回顶部效果
2018/12/28 Javascript
深入理解JavaScript 箭头函数
2019/05/30 Javascript
python的绘图工具matplotlib使用实例
2014/07/03 Python
python实现通过shelve修改对象实例
2014/09/26 Python
Python加pyGame实现的简单拼图游戏实例
2015/05/15 Python
python各种语言间时间的转化实现代码
2016/03/23 Python
Python使用redis pool的一种单例实现方式
2016/04/16 Python
一张图带我们入门Python基础教程
2017/02/05 Python
python中判断文件编码的chardet(实例讲解)
2017/12/21 Python
Pycharm配置远程调试的方法步骤
2018/12/17 Python
python模拟登陆,用session维持回话的实例
2018/12/27 Python
pytorch中tensor张量数据类型的转化方式
2019/12/31 Python
From CSV to SQLite3 by python 导入csv到sqlite实例
2020/02/14 Python
使用python 计算百分位数实现数据分箱代码
2020/03/03 Python
Python自动登录QQ的实现示例
2020/08/28 Python
Joie官方网上商店:购买服装和女装配饰
2018/06/05 全球购物
电子商务应届生自我鉴定
2014/01/13 职场文书
学习保证书范文
2014/04/30 职场文书
机关作风建设剖析材料
2014/10/11 职场文书
2014年科室工作总结范文
2014/12/19 职场文书
计划生育个人总结
2015/03/02 职场文书
2015年员工工作表现评语
2015/03/25 职场文书
python - asyncio异步编程
2021/04/06 Python
SpringBoot 集成Redis 过程
2021/06/02 Redis
详解Redis的三种常用的缓存读写策略步骤
2022/05/06 Redis
如何使用注解方式实现 Redis 分布式锁
2022/07/23 Redis