<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>阻尼形变</title>
<style>
*{margin:0; padding:0}
div{height:200px; width:10%; background:orange; float:left; border-radius:10px;}
</style>
<script>
window.onload=function(){
var aDiv=document.getElementsByTagName('div');
var clientHeight=window.innerHeight;
//阻尼形变函数封装
function dampTransH(obj,dampCoefficient,target){
var efficient=dampCoefficient>1? 1.0-1/dampCoefficient : 1.0-dampCoefficient;
clearInterval(obj.timer);
obj.timer=setInterval(function(){
var speed=(target-obj.offsetHeight)*efficient;
speed=speed>0? Math.ceil(speed) : Math.floor(speed);
var curH=obj.offsetHeight+speed;
if((speed<0 && curH<target) || (speed>0 && curH>target)){
curH=target;
clearInterval(obj.timer);
}
obj.style.height=curH+'px';
},30);
}
//为10个柱子设置相应的事件响应
for(var i=0;i<aDiv.length;i++){
aDiv[i].onmouseover=function(){
dampTransH(this,0.6,clientHeight);
}
aDiv[i].onmouseout=function(){
dampTransH(this,0.6,200);
}
}
}
</script>
</head>
<body>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</body>
</html>请问如何将上述效果做到屏幕底部实现?实现细节要求:无论浏览器窗口大小如何变化,所有柱子必须始终位于屏幕底部,而不是出现滚动条当柱子位于屏幕底部时,柱子向上形变而非向下形变在屏幕宽度发生变化的情况下,10个柱形必须能自适应宽度,即无论屏幕宽度怎么变化,屏幕上总能显示出一排的10个柱子在柱子高度发生变化的情况下,柱子最高高度总是浏览器窗口可用部分的高度全程(无论是否触发动画)不能出现任意方向的滚动条
添加回答
举报
0/150
提交
取消