小米導航列表欄,應該怎么用JS寫出來,和小米官網那樣的效果出來
hoverli
如果下面有子元素,那么就讓他的高度變大,如果是第二次hoverli
且有和第一次hover時li
只能變內容,高度不能變
如果li
內沒有其他的內容,那么就讓前面hover出來的li
收起來
謝謝大家
昨晚在發(fā)布這個問題后,關了電腦后,突發(fā)奇想的手寫一段JS代碼,然后到今天下班了再小修小改了下,發(fā)現可以了
具體思路是通過在css里就把每一個li里的子元素高度設為目標高度,然后就用JS來操作,不寫每個li的移出事件,只寫移入事件`下面是我的JS代碼
var oNav = document.getElementById("nav"),
oUl = oNav.getElementsByTagName("ul")[0],
aLi = oUl.children;
var onoff = true,num = 0;
for (var i = 0; i < aLi.length; i++) {
aLi[i].index = i;
aLi[i].onmouseenter = function(){
if( aLi[this.index].getAttribute("class")==="fl conversion" ){
if( onoff ){
this.children[1].style.height = "0";
this.children[1].style.display = "block";
animate(aLi[this.index].children[1],"height",232,500);
num = this.index;
onoff = false;
}else{
aLi[num].children[1].style.display = "none";
num = this.index;
aLi[num].children[1].style.display = "block";
}
}else{
animate(aLi[num].children[1],"height",0,500);
onoff = true;
}
};
oUl.onmouseleave = function () {
animate(aLi[num].children[1],"height",0,500);
onoff = true;
}
}
如果您發(fā)現有問題,歡迎指出并指正,謝謝
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數據專業(yè)的國家
北大青鳥中博軟件學院創(chuàng)立于2003年,作為華東區(qū)著名互聯網學院和江蘇省首批服務外包人才培訓基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團創(chuàng)建于1999年,經過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術與教育服務機構,發(fā)展為教育服務業(yè)的綜合性企業(yè)集團,成為集合面授教學培訓、網
達內教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構,是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
曾工作于聯想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經理從事移動互聯網管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經理職務負責iOS教學及管理工作。
浪潮集團項目經理。精通Java與.NET 技術, 熟練的跨平臺面向對象開發(fā)經驗,技術功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網頁制作和網頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經驗。曾經歷任德國Software AG 技術顧問,美國Dachieve 系統(tǒng)架構師,美國AngelEngineers Inc. 系統(tǒng)架構師。