您的位置:首页 > Web前端 > JavaScript

[学习笔记]JavaScript基础--任意值运动框架

2015-08-08 22:55 861 查看
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<meta charset="utf-8" />
<style>
div {width:200px; height:200px; margin:20px; float:left;
background:yellow; border:10px solid black; filter:alpha(opacity:30);
opacity:0.3;
}
</style>
<script>

window.onload = function ()
{
var oDiv1 = document.getElementById('div1');
oDiv1.onmouseover = function ()
{
startMove(this,'opacity',100);
};
oDiv1.onmouseout = function () {
startMove(this, 'opacity', 30);
};
};
function getStyle(obj, name) {
if (obj.currentStyle) {
return obj.currentStyle[name];
}
else {
return getComputedStyle(obj, false)[name];
}
}
function startMove(obj,attr,iTarget)
{
clearInterval(obj.timer);
obj.timer = setInterval(function ()
{
var cur = 0;
if (attr == 'opacity')
{
cur = Math.round(parseFloat(getStyle(obj, attr)) * 100);
}
else
{
cur = parseInt(getStyle(obj, attr));
}
var speed = (iTarget - cur) / 6;
speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);

if(cur==iTarget)
{
clearInterval(obj.timer);
}
else
{
if (attr == 'opacity')
{
obj.style.filter = 'alpha(opacity:' + (cur + speed) + ')';
obj.style.opacity = (cur + speed) / 100;
document.getElementById('txt1').value = obj.style.opacity;
}
obj.style[attr] = cur + speed + 'px';
}
}, 30);
}
</script>
</head>
<body>
<div id="div1"></div>
<input type="text" id="txt1" />
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: