使用js实现左侧或右侧 侧边栏弹框

我们可能经常在网页中的左侧或右侧遇到当鼠标移入到按钮时就出来小弹框,鼠标移出按钮时弹框又缩回去了的功能操作,如下图的功能:

初始只有一个按钮悬浮在页面左侧,

当把鼠标移入”分享到“按钮出来弹框,

移出“分享到”按钮后变为最上面图的样子,具体实现代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style>
  #div1{ width:150px; height:200px; position:absolute; top:50px; left:-150px; background:#F00;}
  #div1 span{ width:20px; height:70px; position:absolute; left:150px; top:80px; line-height:20px; right:-20px; background:#ccc;}
</style>
<script>
  window.onload=function(){
      var oDiv=document.getElementById('div1');
        oDiv.onmouseover=function(){
          startMove(0); //移入处于显示状态,默认为隐藏状态,根据红色字处进行操作
       };
       oDiv.onmouseout=function(){
          startMove(-150); //div1距离页面左边界线的距离,移出处于隐藏状态
       };
     };
     var timer=null;
function startMove(Taget)
{ 
         var oDiv=document.getElementById('div1');
        clearInterval(timer);
        timer=setInterval(function(){
            var speed=0;  //弹框的移动速度
            if(oDiv.offsetLeft<Taget)
            {
               speed=10;
            }
            else
            {
               speed=-10;
            }
              if(oDiv.offsetLeft==Taget)
             {
                 clearInterval(timer);
             }
             else
             {
                oDiv.style.left=oDiv.offsetLeft+speed+'px';
             }
          },30);
}
</script>
</head>

<body>
<div id='div1'>
   <span>分享到</span>
</div>
</body>
</html>
  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值