使用JavaScrip模拟实现仿京东搜索框功能


Posted in Javascript onOctober 16, 2019

使用js模拟实现京东的搜索框,主要用了js中的onfocus(注册焦点事件),onblur(失去焦点的事件);

主要实现了:

  1. 在鼠标点进去的时候,里面的默认内容消失;
  2. 在输入之后,再点击搜索框外,输入的内容还在搜索框中;
  3. 如果输入为空,点击搜索框外,里面自动显示默认内容;
  4. 内容颜色的改变

效果图

使用JavaScrip模拟实现仿京东搜索框功能

代码

<!DOCTYPE html>
<html>
 <head>
 <meta charset="utf-8">
 <title>京东搜索框</title>
 <style type="text/css">
  *{
  margin: 0;
  padding: 0;
  border: 0;
  }
  #search{
  width: 550px;
  height: 35px;
  margin: 100px auto;
  }
  #search input{
  width: 492px;
  height: 31px;
  border: 2px solid #f10215;
  outline-style: none;/* 消除原来的边框默认属性 */
  float: left;
  padding-left: 4px;/* 让文字在搜索的时候距离框4px */
  color: #888;
  }
  #search button{
  width: 50px;
  height: 35px;
  background-color: #f10215;
  float: left;
  color: white;
  }
 </style>
 <script type="text/javascript">
  var keyword = "iphone 11";//搜索框中默认的搜索词
  window.onload = function(){
  //得到按钮的对象
  var btnsearch = document.getElementById("search").getElementsByTagName("button")[0];
  //得到搜索框的对象
  var txt = document.getElementById("search").getElementsByTagName("input")[0];
  //为搜索框注册焦点事件
  txt.onfocus = function(){
   //当在焦点上时让搜索框文字变成黑色
   txt.style.color = "black";
   //如果搜索框为关键字的时候,注册焦点就让搜索框为空
   if (txt.value == keyword) {
   txt.value = "";
   }
  }
  //为搜索框注册失去焦点事件
  txt.onblur = function(){
   //在失去焦点的时候如果搜索框内容为空,就让搜索框显示默认关键字
   if (txt.value == "") {
   this.value = keyword;
   this.style.color = "#888";
   }
  }
  }
 </script>
 </head>
 <body>
 <div id="search">
  <input type="text" value="iphone 11" />
  <button>搜索</button>
 </div>
 </body>
</html>
  • onfocus事件:事件在对象获得焦点时发生,常用在表单中
  • onblur事件:事件在对象失去焦点时发生

css中的属性:outline用于修饰元素的轮廓;

总结

以上所述是小编给大家介绍的使用JavaScrip模拟实现仿京东搜索框功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
JavaScript高级程序设计 阅读笔记(十八) js跨平台的事件
Aug 14 Javascript
javascript cookie的简单应用
Feb 24 Javascript
基于node实现websocket协议
Apr 25 Javascript
jQuery实现 上升、下降、删除、添加一行代码
Mar 06 Javascript
详解Angular2 之 结构型指令
Jun 21 Javascript
vue-cli之router基本使用方法详解
Oct 17 Javascript
Angular5中状态管理的实现
Sep 03 Javascript
详解Vue2 添加对scss的支持
Jan 02 Javascript
原生javascript实现连连看游戏
Jan 03 Javascript
详解Vue前端对axios的封装和使用
Apr 01 Javascript
Node.js API详解之 zlib模块用法分析
May 19 Javascript
详谈Object.defineProperty 及实现数据双向绑定
Jul 18 Javascript
微信小程序如何实现在线客服功能
Oct 16 #Javascript
Vue 实现从文件中获取文本信息的方法详解
Oct 16 #Javascript
Vue 实现从小到大的横向滑动效果详解
Oct 16 #Javascript
JQuery实现ul中添加LI和删除指定的Li元素功能完整示例
Oct 16 #jQuery
JS使用正则表达式提交页面验证的代码
Oct 16 #Javascript
JS使用正则表达式判断输入框失去焦点事件
Oct 16 #Javascript
微信小程序使用echarts获取数据并生成折线图
Oct 16 #Javascript
You might like
建站常用13种PHP开源CMS比较
2009/08/23 PHP
基于PHP常用函数的用法详解
2013/05/10 PHP
PHP禁止个别IP访问网站
2013/10/30 PHP
访问编码后的中文URL返回404错误的解决方法
2014/08/20 PHP
php实现session自定义会话处理器的方法
2015/01/27 PHP
php编程每天必学之表单验证
2016/03/01 PHP
php自动载入类用法实例分析
2016/06/24 PHP
使用基于jquery的gamequery插件做JS乒乓球游戏
2011/07/31 Javascript
MooBox 基于Mootools的对话框插件
2012/01/20 Javascript
用js实现table单元格高宽调整,兼容合并单元格(兼容IE6、7、8、FF)实例
2013/06/25 Javascript
Jquery选择子控件&quot;大于号&quot;和&quot; &quot;区别介绍及使用示例
2013/06/25 Javascript
jQuery中:gt选择器用法实例
2014/12/29 Javascript
javascript使用输出语句实现网页特效代码
2015/08/06 Javascript
js实现具有高亮显示效果的多级菜单代码
2015/09/01 Javascript
Bootstrap表格和栅格分页实例详解
2016/05/20 Javascript
轻松实现jquery选项卡切换效果
2016/10/10 Javascript
Bootstrap基本样式学习笔记之按钮(4)
2016/12/07 Javascript
Bootstrap表单控件学习使用
2017/03/07 Javascript
JS库之ParticlesJS使用简介
2017/09/12 Javascript
详解Vue快速零配置的打包工具——parcel
2018/01/16 Javascript
JS实现星星海特效
2019/12/24 Javascript
使用preload预加载页面资源时注意事项
2020/02/03 Javascript
uniapp电商小程序实现订单30分钟倒计时
2020/11/01 Javascript
[49:11]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第二场 12.20
2020/12/23 DOTA
python关键字and和or用法实例
2015/05/28 Python
Python 元类实例解析
2018/04/04 Python
Python实现的读取/更改/写入xml文件操作示例
2018/08/30 Python
Python自带的IDE在哪里
2020/07/01 Python
keras的三种模型实现与区别说明
2020/07/03 Python
python matplotlib库的基本使用
2020/09/23 Python
Charles & Colvard官网:美国莫桑石品牌
2019/06/05 全球购物
怎样写好自我评价呢?
2014/02/16 职场文书
《二泉映月》教学反思
2014/04/15 职场文书
最新离婚协议书范本
2014/08/19 职场文书
违反纪律检讨书范文
2015/05/07 职场文书
新学期小学班主任工作计划
2019/06/21 职场文书