JS实现京东首页之页面顶部、Logo和搜索框功能


Posted in Javascript onJanuary 12, 2017

    昨天我们主要讲了京东首页的基本布局,今天我们主要来逐步实现京东首页的页面顶部、Logo&搜索框。首先我们来看下我们今天将要实现的效果:

JS实现京东首页之页面顶部、Logo和搜索框功能

下面页面布局详细分析:

1、页面头部分三个部分依次实现:五角星图、收藏京东、右边文字部分(用列表实现);

其中当鼠标停放在手机京东上,手机背景图发生变化,变成红色带jd的图案;当鼠标悬停在客服服务上,出现下拉列表。

2、Logo&搜索框分四个部分实现:左边京东Logo、中间搜索框(上部:快速搜索;下部:热门搜索)、右部我的京东&去购物车(步骤类似我的京东,省略)

分析图:

JS实现京东首页之页面顶部、Logo和搜索框功能

具体实现代码如下:

jd_index.html

<!doctype html>
<html>
  <head>
    <title>Insert your title</title>
    <meta charset="utf-8">
    <link rel="stylesheet" href="jd_index.css">
  </head>
  <body>
    <!-- 1、网页头部 -->
    <header id="top">
      <!-- 1、五角星(左) -->
      <img class="lf" src="Images/star.jpg">
      <!-- 2、收藏京东(左) -->
      <a href="#" class="lf">收藏京东</a>
      <!-- 3、文字列表(右) -->
      <ul class="rt">
        <li>
          您好,欢迎来到京东
          <a href="#">[登录]</a>
          <a href="#">[免费注册]</a>
        </li>
        <li>
          <b></b> <!-- 边框 -->
          <a href="#">我的订单</a>
        </li>
        <li class="vip">
          <b></b> <!-- 边框 -->
          <a href="#">会员俱乐部</a>
        </li>
        <li class="dakehu">
          <b></b> <!-- 边框 -->
          <a href="#">企业频道</a>
        </li>
        <li class="app_jd">
          <b></b> <!-- 边框 -->
          <a href="#">手机京东</a>
        </li>
        <li class="service">
          <b></b> <!-- 边框 -->
          <a href="#">客户服务</a>
          <!-- 弹出菜单 -->
          <ul id="service_items">
            <li>
              <a href="#">帮助中心</a>
            </li>
            <li>
              <a href="#">帮助中心</a>
            </li>
            <li>
              <a href="#">帮助中心</a>
            </li>
            <li>
              <a href="#">帮助中心</a>
            </li>
            <li>
              <a href="#">帮助中心</a>
            </li>
          </ul>
        </li>
        <li>
          <b></b> <!-- 边框 -->
          <a href="#">网站导航</a>
        </li>
      </ul>
    </header>
    <!-- 2、LOGO 和 搜索框 -->
    <div id="top_main">
      <!-- 1、LOGO -->
      <a href="#" class="lf">
        <img src="Images/logo-201305.png">
      </a>    
      <!-- 2、搜索框和搜索按钮 -->
      <div id="search_box">
        <!-- 1、搜索框和按钮 -->
        <div class="search">
          <input class="txtSearch">
          <button>搜索</button>
        </div>
        <!-- 2、热门搜索 -->
        <div class="hot_words">
          <span>热门搜索:</span>
          <a href="#">家纺11月大促</a>
          <a href="#">彩虹电热毯</a>
          <a href="#">博洋家纺</a>
          <a href="#">霞珍</a>
          <a href="#">家纺11月大促</a>
          <a href="#">彩虹电热毯</a>
          <a href="#">博洋家纺</a>
          <a href="#">霞珍</a>
          <a href="#">家纺11月大促</a>
          <a href="#">彩虹电热毯</a>
          <a href="#">博洋家纺</a>
          <a href="#">霞珍</a>
          <a href="#">家纺11月大促</a>
          <a href="#">彩虹电热毯</a>
          <a href="#">博洋家纺</a>
          <a href="#">霞珍</a>
          <a href="#">家纺11月大促</a>
          <a href="#">彩虹电热毯</a>
          <a href="#">博洋家纺</a>
          <a href="#">霞珍</a>
          <a href="#">家纺11月大促</a>
          <a href="#">彩虹电热毯</a>
          <a href="#">博洋家纺</a>
          <a href="#">霞珍</a>
        </div>
      </div>
      <!-- 3、我的京东 -->
      <div id="my_jd">
        我的京东
        <b></b><!-- 向下箭头 -->
      </div>
      <!-- 4、去购物车结算 -->
      <!-- 5、追加空子元素,撑起top_main -->
      <div class="clear"></div>
    </div>
    <!-- 3、主导航-->
    <nav id="nav">主导航</nav>
    <!-- 4、banner广告部分-->
    <div id="banner">banner广告部分</div>
    <!-- 5、页面主体-->
    <section id="main">页面主体</section>
    <!-- 6、页面底部-配送方式 -->
    <footer id="foot_box">配送方式</footer>
    <!-- 7、页面底部-备案号 -->
    <footer id="footer">备案号</footer>
  </body>
</html>

外部样式:

jd_index.css

/*测试属性*/
#nav,#banner,#main,#foot_box,#footer{
  border:1px solid black;
}
/*通用*/
body{
  font:12px "microsoft yahei",Arial,Helvetica,sans-serif;
  color:#666;
  margin:0;
}
ul,p,h1,h2,h3,h4,h5,h6,ol,dl,dd{
  margin:0;
  padding:0;
  list-style:none;
}
img{vertical-align:bottom;}
a{
  color:#666;
  text-decoration:none;
}
a:hover{
  color:#FF0700;
  text-decoration:underline;
}
.lf{float:left;}
.rt{float:right;}
.clear{clear:both;}
/**布局元素样式**/
#top,#top_main,#nav,#banner,#main,#foot_box,#footer{
  width:1211px;
  margin:0 auto;
}
/*******1、页面顶部**********/
#top{
  /*高度,行高,背景颜色,下边框*/
  height:30px;
  line-height:30px;
  background-color:#f7f7f7;
  border-bottom:1px solid #eee;
}
#top>img{
  margin-top:10px;
  margin-right:5px;
}
/*文字列表*/
#top>ul>li{
  float:left;
  margin-right:10px;
}
#top>ul b{
  border-left:1px solid #ddd;
  margin-right:10px;
}
/*会员俱乐部*/
li.vip a{
  padding-left:34px;
  background:url(Images/vip.jpg) no-repeat left center;
}
/*大客户*/
li.dakehu a{
  padding-left:31px;
  background:url(Images/dakehu.jpg) no-repeat left center;
}
/*手机京东*/
li.app_jd a{
  /*左内边距,行内块,高度,行高,背景*/
  padding-left:23px;
  display:inline-block;
  height:22px;
  line-height:22px;
  background:url(Images/iconlist_2.png) no-repeat -128px -360px;
}
li.app_jd a:hover{
  background-position:-128px -399px;
}
/*客户服务*/
li.service>a{
  /*左右内边距模拟宽度*/
  padding:0 15px;
  /*高度,行高*/
  display:inline-block;
  height:26px;
  line-height:26px;
  /*背景图像:水平偏右,垂直居中*/
  background:url(Images/jt_down.jpg) no-repeat 95% center;
  /*左右上边框:透明*/
  border:1px solid transparent;
  border-bottom:none;
}
/*客户服务-弹出菜单*/
li.service{
  /*相对定位:配合#service_items 做绝对定位*/
  position:relative;
}
#service_items{
  /*宽度,边框,背景颜色,文本水平居中,定位*/
  box-sizing:border-box;
  width:80px;
  border:1px solid #ddd;
  border-top:none;
  background-color:#fff;
  text-align:center;
  /*绝对定位*/
  position:absolute;
  top:28px;
  left:11px;
  /*默认隐藏*/
  display:none;
}
/*当鼠标移入到li.service上时,找到其子级#service_items ,并且显示*/
li.service:hover #service_items{
  display:block;
}
/*当鼠标移入到li.service上时,找到其直接子级a标记,设置样式*/
li.service:hover>a{
  border-color:#ddd;
  background-color:#fff;
  background-image:url(Images/jt_up.jpg);
}
/**********2、LOGO 和 搜索框************/
#top_main{
  padding:10px 0;
}
/*搜索框和搜索按钮和热门搜索*/
#search_box{
  /*左浮动,宽度,左右外边距,min-height*/
  float:left;
  width:500px;
  margin:0 80px 0 40px;
  min-height:30px;
}
#search_box div.search{
  /*高度,背景颜色*/
  height:30px;
  background-color:#e4393c;
  /*边框*/
  padding:3px;
}
#search_box input{
  /*宽度,高度,取消边框*/
  width:410px;
  height:30px;
  border:none;
  box-sizing:border-box;
  padding-left:10px;
}
#search_box button{
  /*宽度,高度,取消边框,背景颜色*/
  width:80px;
  height:28px;
  border:none;
  background-color:#E4393C;
  /*文字:大小,颜色,加粗*/
  font-size:14px;
  color:#fff;
  font-weight:bold;
}
/*热门搜索*/
#search_box div.hot_words{
  /*上外边距*/
  margin-top:5px;
  /*宽度,高度,溢出隐藏*/
  width:500px;
  height:16px;
  overflow:hidden;
}
#search_box div.hot_words span{
  color:#999;
}
#search_box div.hot_words a{
  color:#999;
}
/*我的京东*/
#my_jd{
  /*左浮动,边框,背景*/
  float:left;
  border:1px solid #EFEFEF;
  background-color:#f7f7f7;
  /*高度,左内边距,背景图像*/ /*20*17*/
  padding-left:30px;
  height:27px;
  line-height:27px;
  background-image:url(Images/iconlist_2.png);
  background-repeat:no-repeat;
  background-position:-116px -25px;
  padding-right:5px;
}
#my_jd:hover{
  background-color:#fff;
  background-position:-116px -55px;
}
#my_jd b{
  /*行内块,宽度,高度,边框 */
  display:inline-block;
  width:0px;
  height:0px;
  border:5px solid transparent;
  border-top-color:#ccc;
  /*相对定位:实现该元素的位置微调*/
  position:relative;
  top:3px;
}

以上所述是小编给大家介绍的JS实现京东首页之页面顶部、Logo和搜索框功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript中的View-Model使用介绍
Aug 11 Javascript
前台js对象在后台转化java对象的问题探讨
Dec 20 Javascript
郁闷!ionic中获取ng-model绑定的值为undefined如何解决
Aug 27 Javascript
BootstrapValidator实现注册校验和登录错误提示效果
Mar 10 Javascript
十大 Node.js 的 Web 框架(快速提升工作效率)
Jun 30 Javascript
高性能的javascript之加载顺序与执行原理篇
Jan 14 Javascript
vue之浏览器存储方法封装实例
Mar 15 Javascript
关于vue中的ajax请求和axios包问题
Apr 19 Javascript
vue项目部署上线遇到的问题及解决方法
Jun 10 Javascript
javascript中的event loop事件循环详解
Dec 14 Javascript
JS去除字符串最后的逗号实例分析【四种方法】
Jun 20 Javascript
vue3使用vue-count-to组件的实现
Dec 25 Vue.js
JS百度地图搜索悬浮窗功能
Jan 12 #Javascript
原生js实现焦点轮播图效果
Jan 12 #Javascript
详解能在多种前端框架下使用的表格控件
Jan 11 #Javascript
vuejs父子组件通信的问题
Jan 11 #Javascript
bootstrap 表单验证使用方法
Jan 11 #Javascript
原生js实现无缝轮播图效果
Jan 11 #Javascript
Bootstrap 填充Json数据的实例代码
Jan 11 #Javascript
You might like
PHP使用PDO操作数据库的乱码问题解决方法
2016/04/08 PHP
JQuery 简便实现页面元素数据验证功能
2007/03/24 Javascript
jQuery仿Excel表格编辑功能的实现代码
2013/05/01 Javascript
jquery实现瀑布流效果分享
2014/03/26 Javascript
jQuery添加options点击事件并传值实例代码
2016/05/18 Javascript
bootstrap+jquery项目引入文件报错的解决方法
2018/01/22 jQuery
webpack里使用jquery.mCustomScrollbar插件的方法
2018/05/30 jQuery
微信小程序使用swiper组件实现层叠轮播图
2018/11/04 Javascript
js简单的分页器插件代码实例
2019/09/11 Javascript
vue项目中使用多选框的实例代码
2020/07/22 Javascript
原生js实现自定义难度的扫雷游戏
2021/01/22 Javascript
[02:06]DOTA2英雄基础教程 暗影萨满
2013/12/16 DOTA
重命名批处理python脚本
2013/04/05 Python
python实现的一只从百度开始不断搜索的小爬虫
2013/08/13 Python
对于Python的Django框架使用的一些实用建议
2015/04/03 Python
给Python的Django框架下搭建的BLOG添加RSS功能的教程
2015/04/08 Python
python实现文件助手中查看微信撤回消息
2019/04/29 Python
python使用pip安装模块出现ReadTimeoutError: HTTPSConnectionPool的解决方法
2019/10/04 Python
python实现单张图像拼接与批量图片拼接
2020/03/23 Python
Python unittest discover批量执行代码实例
2020/09/08 Python
python中slice参数过长的处理方法及实例
2020/12/15 Python
Python wordcloud库安装方法总结
2020/12/31 Python
css3中transition属性详解
2014/09/02 HTML / CSS
浅谈HTML5中dialog元素尝鲜
2018/10/15 HTML / CSS
Booking.com英国官网:全球酒店在线预订网站
2018/04/21 全球购物
英国和世界各地预订便宜的酒店:LateRooms.com
2019/05/05 全球购物
学校安全工作制度
2014/01/19 职场文书
行政专员岗位职责说明书
2014/09/01 职场文书
关于国庆节的演讲稿
2014/09/05 职场文书
高一学年自我鉴定范文(3篇)
2014/09/26 职场文书
高三复习计划
2015/01/19 职场文书
平遥古城导游词
2015/02/03 职场文书
四风之害观后感
2015/06/09 职场文书
2015中学教学工作总结
2015/07/22 职场文书
副校长2015年教育教学工作总结
2015/07/27 职场文书
《初涉尘世》读后感3篇
2020/01/10 职场文书