jquery实现盒子拖拽

这篇文章主要为大家详细介绍了jquery实现盒子拖拽动画效果,文,感兴趣的小伙伴们可以参考一下

核心代码部分
<script src="js/jquery-1.11.1.js"></script>
<script>
// 给小盒子绑定鼠标按下事件
        $(".small").bind('mousedown',function(){
        // 在整个页面移动事件
            $(document).mousemove(function(e){
            // 获取小盒子的left值    = 鼠标当前的x轴坐标-大盒子的总left值-小盒子宽度的一半
                var small_left = e.pageX-$(".big").offset().left-$(".small").width()/2;
            // 获取小盒子的top值    = 鼠标当前的y轴坐标-大盒子的总top值-小盒子总高度的一半
                var small_top = e.pageY-$(".big").offset().top-$(".small").height()/2;
                // 判断小盒子的left值
                if(small_left <0){
                    small_left = 0;
                }else if(small_left > $(".big").width()-$(".small").width()){
                    small_left = $(".big").width-$(".small").width();
                }
                // 判断小盒子的top值
                if(small_top <0){
                    small_top = 0;
                }else if(small_top > $(".big").width()-$(".small").height()){
                    small_top = $(".big").width-$(".small").height();
                }
                //改变小盒子的llet值和top值并添加鼠标抬起事件解绑移动
                $(".small").css({left:small_left,top:small_top})
            }).mouseup(function(){
                $(this).unbind("mousemove")
            })
        })
    </script>
html,css代码部分
<style>
  *{margin: 0; padding: 0;}
  .big{
      width: 800px; height: 800px;
      position: relative;
      margin: 20px auto;
      background: lightgray;
  }
  .small{
      width: 150px; height: 150px;
      position:absolute;
      background: lightsalmon;
  }
</style>
<div class="big">
        <div class="small"></div>
</div>
附图

在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值