原生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 相关文章推荐
借用Google的Javascript API Loader来加速你的网站
Jan 28 Javascript
jquery可见性过滤选择器使用示例
Jun 24 Javascript
js控制表单操作的常用代码小结
Aug 15 Javascript
js切换光标示例代码
Oct 10 Javascript
JQuery中使用on方法绑定hover事件实例
Dec 09 Javascript
JS实现三个层重叠点击互相切换的方法
Oct 06 Javascript
JS无缝滚动效果实现方法分析
Dec 21 Javascript
巧用canvas
Jan 21 Javascript
原生javascript实现文件异步上传的实例讲解
Oct 26 Javascript
jQuery插件Validation表单验证详解
May 26 jQuery
Jquery Datatables的使用详解
Jan 30 jQuery
js+canvas绘制图形验证码
Sep 21 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
预告映像公开!第1章续篇剧场版动画《Princess Principal Crown Handler》4月10日上映!
2020/03/06 日漫
让你的PHP同时支持GIF、png、JPEG
2006/10/09 PHP
PHP中的MYSQL常用函数(php下操作数据库必备)
2010/09/12 PHP
PHP中获取文件扩展名的N种方法小结
2012/02/27 PHP
PHP实现通过URL提取根域名
2016/03/31 PHP
php利用云片网实现短信验证码功能的示例代码
2017/11/18 PHP
php 删除一维数组中某一个值元素的操作方法
2018/02/01 PHP
jquery 触发a链接点击事件解决方案
2013/05/02 Javascript
当前页禁止复制粘贴截屏代码小集
2013/07/24 Javascript
JS调用CS里的带参方法实例
2013/08/01 Javascript
高效率JavaScript编写技巧整理
2013/08/23 Javascript
对Jquery中的ajax再封装,简化操作示例
2014/02/12 Javascript
JavaScript的事件代理和委托实例分析
2015/03/25 Javascript
js实现透明度渐变效果的方法
2015/04/10 Javascript
jq实现左侧显示图片右侧文字滑动切换效果
2015/08/04 Javascript
JavaScript中split与join函数的进阶使用技巧
2016/05/03 Javascript
JS实现简易刻度时钟示例代码
2017/03/11 Javascript
JS+HTML5 FileReader对象用法示例
2017/04/07 Javascript
JavaScript实现反转字符串的方法详解
2017/04/27 Javascript
详解在vue-cli项目中安装node-sass
2017/06/21 Javascript
浅谈事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流
2017/07/22 jQuery
微信小程序如何获取手机验证码
2018/11/04 Javascript
Python发送email的3种方法
2015/04/28 Python
Python随机生成数据后插入到PostgreSQL
2016/07/28 Python
python找出完数的方法
2018/11/12 Python
浅析python,PyCharm,Anaconda三者之间的关系
2019/11/27 Python
Python内置函数及功能简介汇总
2020/10/13 Python
CSS3实现简易版的刮刮乐效果
2016/09/27 HTML / CSS
绝对令人的惊叹的CSS3折叠效果(3D效果)整理
2012/12/30 HTML / CSS
海外淘书首选:AbeBooks
2017/07/31 全球购物
大学四年职业生涯规划书范文
2014/01/02 职场文书
小学校园活动策划
2014/01/30 职场文书
大学生学期自我鉴定
2014/03/19 职场文书
2015元旦节寄语
2014/12/08 职场文书
导游词之无锡古运河
2019/11/14 职场文书
html5 录制mp3音频支持采样率和比特率设置
2021/07/15 Javascript