原生JS實(shí)現(xiàn)仿淘寶網(wǎng)左側(cè)商品分類(lèi)菜單效果代碼
本文實(shí)例講述了原生JS實(shí)現(xiàn)仿淘寶網(wǎng)左側(cè)商品分類(lèi)菜單效果代碼。分享給大家供大家參考。具體如下:
這是一款原生JS實(shí)現(xiàn)的仿淘寶網(wǎng)左側(cè)商品分類(lèi)菜單效果代碼,JavaScript技術(shù)實(shí)現(xiàn),兼容各主流瀏覽器。自己再修改一下CSS菜單,它會(huì)變得更漂亮。
運(yùn)行效果截圖如下:

在線演示地址如下:
http://demo.jb51.net/js/2015/js-f-taobao-pro-menu-style-codes/
具體代碼如下:
<!DOCTYPE html>
<head>
<title>仿淘寶網(wǎng)左側(cè)的商品分類(lèi)菜單代碼</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>所有商品分類(lèi)</h3>
<ul id="J_category" class="item">
<li>潮流服飾</li>
<li>精品鞋包</li>
<li>美容護(hù)膚</li>
<li>珠寶飾品</li>
<li>運(yùn)動(dòng)戶外</li>
<li>手機(jī)數(shù)碼</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;'>美容護(hù)膚</div>
<div class='sub-item' style='display:none;'>珠寶飾品</div>
<div class='sub-item' style='display:none;'>運(yùn)動(dòng)戶外</div>
<div class='sub-item' style='display:none;'>手機(jī)數(shù)碼</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>
希望本文所述對(duì)大家的JavaScript程序設(shè)計(jì)有所幫助。
- vue.js 左側(cè)二級(jí)菜單顯示與隱藏切換的實(shí)例代碼
- javascript仿京東導(dǎo)航左側(cè)分類(lèi)導(dǎo)航下拉菜單效果
- JS實(shí)現(xiàn)新浪博客左側(cè)的Blog管理菜單效果代碼
- JS實(shí)現(xiàn)的左側(cè)豎向滑動(dòng)菜單效果代碼
- JS+CSS實(shí)現(xiàn)經(jīng)典的左側(cè)豎向滑動(dòng)菜單效果
- js實(shí)現(xiàn)的后臺(tái)左側(cè)管理菜單代碼
- js實(shí)現(xiàn)的四級(jí)左側(cè)網(wǎng)站分類(lèi)菜單實(shí)例
- js左側(cè)三級(jí)菜單導(dǎo)航實(shí)例代碼
- js左側(cè)多級(jí)菜單動(dòng)態(tài)的解決方案
- JavaScript實(shí)現(xiàn)左側(cè)菜單效果
相關(guān)文章
不刷新網(wǎng)頁(yè)就能鏈接新的js文件方法總結(jié)
在本篇文章里小編給大家整理的是關(guān)于不刷新網(wǎng)頁(yè)就能鏈接新的js文件方法總結(jié),需要的朋友們參考下。2020-03-03
自定義排序算法在JavaScript中的應(yīng)用小結(jié)
這篇文章主要介紹了自定義排序算法在JavaScript中的應(yīng)用,通過(guò)自定義排序函數(shù),我們能夠精確控制數(shù)組元素的排序邏輯,從而滿足各種復(fù)雜的應(yīng)用場(chǎng)景,需要的朋友可以參考下2024-12-12
JavaScript中Iterator迭代器接口和循環(huán)
這篇文章主要介紹了JavaScript中Iterator迭代器接口和循環(huán),迭代器是數(shù)據(jù)結(jié)構(gòu)遍歷的一種機(jī)制迭代器主要是提供for...of使用,更多相關(guān)內(nèi)推需要的小伙伴可以參考下面文章內(nèi)容2022-06-06
webpack之引入圖片的實(shí)現(xiàn)及問(wèn)題
如果我們希望在頁(yè)面引入圖片。當(dāng)我們基于webpack進(jìn)行開(kāi)發(fā)時(shí),引入圖片會(huì)遇到一些問(wèn)題,這篇文章主要介紹了webpack之引入圖片的實(shí)現(xiàn)及問(wèn)題,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2018-10-10
onbeforeunload與onunload事件異同點(diǎn)總結(jié)
本文對(duì)onbeforeunload與onunload事件的異同點(diǎn)、觸發(fā)于、可以用在哪些元素以及解決刷新頁(yè)面時(shí)不調(diào)用onbeforeunload等等,感興趣的朋友可以參考下哈2013-06-06

