文章出處

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>原生js手風琴特效</title>

<style>

*{

margin: 0;

padding: 0;

}

ul,li{

list-style: none;

}

.box{

width: 1050px;

height: 300px;

margin: 100px auto;

overflow: hidden; 

}

.accordion li{

float: left;

width: 100px;

height: 300px;

color: #000;

font-size: 20px;

}

</style>

</head>

<body>

<p class="box">

<ul class="accordion">

<li style="background: #f99;">1</li>

<li style="background: #9ff;">2</li>

<li style="background: #f9f;">3</li>

<li style="background: #9f9;">4</li>

<li style="background: blue;">5</li>

<li style="width:450px;background: yellow;">6</li>

</ul>

</p>

<script>

function accordion(){

var oBox = document.querySelector(".box");

var accordion = oBox.querySelector(".accordion");

var oList = accordion.getElementsByTagName("li");

var i = 0;

var timer = null;

//console.log(oList.length);

for(var i=0;i<oList.length;i++){

oList[i].index = i;

oList[i].onmouseover = function(){

var index = this.index;

if(timer){

clearInterval(timer);

}

timer = setInterval(function(){

var iWidth = oBox.offsetWidth;  //盒子的總寬度

//console.log(iWidth); 1050

for(var i=0;i<oList.length;i++){

if( index != oList[i].index ){

//設定速度

var speed = ( 100 - oList[i].offsetWidth) / 5;

speed = speed > 0 ? Math.ceil(speed):Math.floor(speed);

oList[i].style.width = oList[i].offsetWidth + speed + "px";

iWidth -= oList[i].offsetWidth;

}

oList[index].style.width = iWidth + "px";

}

},30);

}

}

}

accordion();

</script>

</body>

</html>

看文倉www.kanwencang.com網友整理上傳,為您提供最全的知識大全,期待您的分享,轉載請注明出處。
歡迎轉載:http://www.kanwencang.com/bangong/20170228/108229.html

文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()