原生JS实现仿淘宝网左侧商品分类菜单效果代码


Posted in Javascript onSeptember 10, 2015

本文实例讲述了原生JS实现仿淘宝网左侧商品分类菜单效果代码。分享给大家供大家参考。具体如下:

这是一款原生JS实现的仿淘宝网左侧商品分类菜单效果代码,JavaScript技术实现,兼容各主流浏览器。自己再修改一下CSS菜单,它会变得更漂亮。

运行效果截图如下:

原生JS实现仿淘宝网左侧商品分类菜单效果代码

在线演示地址如下:

具体代码如下:

<!DOCTYPE html>
<head>
<title>仿淘宝网左侧的商品分类菜单代码</title> 
</head>
<body>
<style>
html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,select,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,button,caption,cite,code,dfn,em,input,optgroup,option,select,strong,textarea,th,var{font:inherit}del,ins{text-decoration:none}li{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:baseline}sub{vertical-align:baseline}legend{color:#000}
 .hidden{display:none;}
.sub-col{position:relative;z-index:999;}
.category{width:230px;border:1px solid #8A0E00;}
.category h3 {height:30px;line-height:30px;text-indent:15px;background:#A91319;color:#fff;}
.category ul li{height:30px;line-height:30px;text-indent:35px;background:#FFF8F6 url(arrow-r.png) no-repeat 205px center;border-bottom:1px solid #ECECEC;border-top:1px solid #fff;cursor:pointer;color:#A71F37;} 
.category ul li:hover{background-color:#8A0E00;color:#fff;}
.pop-category{border:2px solid #8A0E00;background:#FDF5F5;position:absolute;left:200px;top:40px;z-index:1000;}
.pop-category .sub-item{width:390px;height:350px;}
</style>
<div class="wrapper">
<div class='sub-col'>
<div class="category">
   <h3>所有商品分类</h3>
   <ul id="J_category" class="item">
    <li>潮流服饰</li>
    <li>精品鞋包</li>
    <li>美容护肤</li>
    <li>珠宝饰品</li>
    <li>运动户外</li>
    <li>手机数码</li>
    <li>居家生活</li>
    <li>家电家装</li>
    <li>母婴用品</li>
    <li>食品保健</li>
   </ul>
   <div id="J_popCategory" class="pop-category hidden">
    <div class='sub-item' style='display:none;'>潮流服饰</div>
    <div class='sub-item' style='display:none;'>精品鞋包</div>
    <div class='sub-item' style='display:none;'>美容护肤</div>
    <div class='sub-item' style='display:none;'>珠宝饰品</div>
    <div class='sub-item' style='display:none;'>运动户外</div>
    <div class='sub-item' style='display:none;'>手机数码</div>
    <div class='sub-item' style='display:none;'>居家生活</div>
    <div class='sub-item' style='display:none;'>家电家装</div>
    <div class='sub-item' style='display:none;'>母婴用品</div>
    <div class='sub-item' style='display:none;'>食品保健</div>
   </div>
  </div>
 </div>
 </div>
 <script type="text/javascript">
//get element's id with '$(id)' method
function $(){
 var elements = new Array();
 for (var i = 0; i < arguments.length; i++) {
 var element = arguments[i];
 if (typeof element == 'string') 
  element = document.getElementById(element);
 if (arguments.length == 1) 
  return element;
 elements.push(element);
 }
 return elements;
}
//get ele's className
function getElementsByClassName(className, tagName){
 var ele = [], all = document.getElementsByTagName(tagName || '*');
 for (var i = 0; i < all.length; i++) {
 if (all[i].className == className) {
  ele[ele.length] = all[i];
 }
 }
 return ele;
}
</script>
 <script type='text/javascript'>
 var category=$('J_category'),popCategory=$('J_popCategory'),
 cateLi=category.getElementsByTagName('li'),subItems=getElementsByClassName('sub-item','div');
 category.onmouseover=function(){
  popCategory.style.display='block';
 };
 category.onmouseout=function(){
  popCategory.style.display='none';
 };
 for(var i=0; i<cateLi.length; i++){
  cateLi[i].index=i;
  cateLi[i].onmouseover=function(){
   for(var j=0; j<subItems.length; j++){
    subItems[j].style.display='none';
   }
   subItems[this.index].style.display='block';
  };
 }
 </script>
</body>
</html>

希望本文所述对大家的JavaScript程序设计有所帮助。

Javascript 相关文章推荐
javascript 一个自定义长度的文本自动换行的函数
Aug 19 Javascript
Js组件的一些写法
Sep 10 Javascript
jquery 滚动条事件简单实例
Jul 12 Javascript
jQuery的显示和隐藏方法与css隐藏的样式对比
Oct 18 Javascript
一个JS函数搞定网页标题(title)闪动效果
May 13 Javascript
js实现键盘上下左右键选择文字并显示在文本框的方法
May 07 Javascript
JQuery标签页效果的两个实例讲解(4)
Sep 17 Javascript
封装好的javascript前端分页插件pagination
Jan 04 Javascript
jQuery实现div随意拖动的实例代码(通用代码)
Jan 28 Javascript
vue-router跳转时打开新页面的两种方法
Jul 29 Javascript
vue项目中使用rem,在入口文件添加内容操作
Nov 11 Javascript
JavaScript实现商品评价五星好评
Nov 30 Javascript
JS+CSS实现电子商务网站导航模板效果代码
Sep 10 #Javascript
如何解决谷歌浏览器下jquery无法获取图片的尺寸
Sep 10 #Javascript
js实现的动画导航菜单效果代码
Sep 10 #Javascript
js实现3D图片逐张轮播幻灯片特效代码分享
Sep 09 #Javascript
简单实现兼容各大浏览器的js复制内容到剪切板
Sep 09 #Javascript
jQuery实现MSN中文网滑动Tab菜单效果代码
Sep 09 #Javascript
js基于面向对象实现网页TAB选项卡菜单效果代码
Sep 09 #Javascript
You might like
php MessagePack介绍
2013/10/06 PHP
Codeigniter生成Excel文档的简单方法
2014/06/12 PHP
Codeigniter出现错误提示Error with CACHE directory的解决方案
2014/06/12 PHP
PHP中mysql_field_type()函数用法
2014/11/24 PHP
thinkPHP下ueditor的使用方法详解
2015/12/26 PHP
PHP中strcmp()和strcasecmp()函数字符串比较用法分析
2016/01/07 PHP
PHP中PCRE正则解析代码详解
2019/04/26 PHP
Javascript打印网页部分内容的脚本
2008/11/17 Javascript
prototype与jquery下Ajax实现的差别
2009/09/13 Javascript
浅析Prototype的模板类 Template
2011/12/07 Javascript
Jquery实现视频播放页面的关灯开灯效果
2013/05/27 Javascript
SeaJS入门教程系列之完整示例(三)
2014/03/03 Javascript
js实现图片无缝滚动
2015/12/23 Javascript
js实现页面跳转的五种方法推荐
2016/03/10 Javascript
arcgis for js 修改infowindow样式的方法
2016/11/02 Javascript
jQuery EasyUi 验证功能实例解析
2017/01/06 Javascript
JS常见简单正则表达式验证功能小结【手机,地址,企业税号,金额,身份证等】
2017/01/22 Javascript
vue自定义全局组件(自定义插件)的用法
2018/01/30 Javascript
layui前端框架之table表数据的刷新方法
2018/08/17 Javascript
微信jssdk逻辑在vue中的运用详解
2018/11/14 Javascript
node.js ws模块搭建websocket服务端的方法示例
2019/04/25 Javascript
Python安装Imaging报错:The _imaging C module is not installed问题解决方法
2014/08/22 Python
numpy使用技巧之数组过滤实例代码
2018/02/03 Python
Python2.7实现多进程下开发多线程示例
2019/05/31 Python
tensorflow 获取checkpoint中的变量列表实例
2020/02/11 Python
Python代码一键转Jar包及Java调用Python新姿势
2020/03/10 Python
Python切片列表字符串如何实现切换
2020/08/06 Python
Django3中的自定义用户模型实例详解
2020/08/23 Python
手把手教你从PyCharm安装到激活(最新激活码),亲测有效可激活至2089年
2020/11/25 Python
CSS3 animation ? steps 函数详解
2019/08/30 HTML / CSS
HTML5调用手机发短信和打电话功能
2020/04/29 HTML / CSS
Bibloo罗马尼亚网站:女装、男装、童装及鞋子和配饰
2019/07/20 全球购物
波兰多品牌运动商店:StreetStyle24.pl
2020/09/22 全球购物
社区矫正工作方案
2014/06/04 职场文书
运动员获奖感言
2014/08/15 职场文书
spring boot项目application.properties文件存放及使用介绍
2021/06/30 Java/Android