这次给大家带来JS做出折叠展开动画(附代码),JS做出折叠展开动画(附代码)的注意事项有哪些,下面就是实战案例,一起来看一下。
<!DOCTYPE = html>
<html>
<head>
<title> JS折叠展开动画</title>
<style>
body{
margin: 0px;
padding: 0px;
}
.red{
background-color:red;
width:200px;
height:200px;
position:relative;
left:-200px;
top:0px;
}
.blue{
background:blue;
width:20px;
height:50px;
position:absolute;
left:200px;
top:75px;
}
</style>
</head>
<body>
<p class="red" id="cf1"><p class="blue" id="cf">分享</p></p>
<script>
window.onload = function(){
var onp = document.getElementById("cf1");
onp.onmouseover = function(){
startmove(0);
}
onp.onmouseout = function(){
startmove(-200);
}
}
var timer ;
function startmove(target){
clearInterval(timer);//清除定时器,以免多次触发定时器导致速度越来越快而不是匀速前进
var onp1 = document.getElementById("cf1");
timer = setInterval(function(){
var speed = 0;
if(onp1.offsetLeft<target){
speed = 10;
}else{
speed = -10;
}
if(onp1.offsetLeft==target){
clearInterval(timer);
}
else{
onp1.style.left = onp1.offsetLeft+speed+'px';
}
},30)
}
</script>
</body>
</html>小结:
一、css部分:
1、别忘记样式初始化;
2、复习css文件的引用方式;(类引用方式)
3、复习绝对定位和相对定位关系(父关系用relative;子关系用absolute)
二、js部分:
1、element.style.left & element.offsetLeft区别:
① 前者单位是px,是字符串;后者单位是数值;
2、思路开始不够清晰,未能抽象出鼠标放上和移开关键变量——目标位置不同而已
3、函数参数尽可能少(在能达成目标的情况下)
4、鼠标作用对象设置为父级p最好,不然会出现闪烁情况(刚调用onmouseover,目标移除,又调用了onmouseout)
5、注意清除定时器(①、防止移动时速度不稳定 ②、到目标位置停止运动)
三、其他:
Q:谷歌浏览器解除禁止弹出窗口?
A:设置——高级设置——隐私设置——内容设置——弹出式窗口,进行相关设置。
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:
以上就是JS做出折叠展开动画(附代码)的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号