JavaScript鼠标滑过动画效果

本文通过JavaScript实现了一个简单的鼠标滑过元素时,元素平滑移动的动画效果。当鼠标悬停在id为'box'的div上时,元素会以每30毫秒移动1/5像素的速度向右移动到指定位置;鼠标离开时,元素则向相反方向平滑返回。此代码段适用于前端开发者实现交互式的网页效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<style>
*{margin:0;padding:0;}
#box{width:200px;height:300px; background: #f00; position: relative;left:-200px;top:0;cursor:pointer;}
#box input{ position: absolute;width:30px; cursor:pointer;outline:none;height:60px;top:125px;right:-30px;word-break:break-all; background: #000;border:none;color:#fff;}

</style>

<script>
window.onload=function(){
var oDiv=document.getElementById("box");
oDiv.onmouseover=function(){
myMove(0);
}
oDiv.onmouseout=function(){
myMove(-200);
}
}
var timer=null;
function myMove(iTarget){
clearInterval(timer);
var oDiv=document.getElementById("box");
timer=setInterval(function(){
var speed=(iTarget-oDiv.offsetLeft)/5;
speed = speed>0?Math.ceil(speed):Math.floor(speed);
if(oDiv.offsetLeft==iTarget){
clearInterval(timer);
}else{
oDiv.style.left=oDiv.offsetLeft+speed+"px";
}
},30)
}


</script>

<div id="box">
<input type="button" id="btn" value="分享" />
</div>


来自前端菜鸟转载:http://www.bird100.cn/


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值