html能够在页面拖动,div在页面上随意拖动

div在页面上随意拖动

时间 :2019-5-29  评论: [ 0 ] 条  浏览: [ 667 ] 次

Html:

//.......

需要引入jquery

Jquery:

$(function(){

var cont=$("#quick_btn");

var contW=$("#quick_btn").width();

var contH=$("#quick_btn").height();

var startX,startY,sX,sY,moveX,moveY;

var winW=$(window).width();

var winH=$(window).height();

//绑定事件

cont.on({

touchstart:function(e){

startX = e.originalEvent.targetTouches[0].pageX; //获取点击点的X坐标

startY = e.originalEvent.targetTouches[0].pageY; //获取点击点的Y坐标

//console.log("startX="+startX+"************startY="+startY);

sX=$(this).offset().left;//相对于当前窗口X轴的偏移量

sY=$(this).offset().top;//相对于当前窗口Y轴的偏移量

//console.log("sX="+sX+"***************sY="+sY);

leftX=startX-sX;//鼠标所能移动的最左端是当前鼠标距div左边距的位置

rightX=winW-contW+leftX;//鼠标所能移动的最右端是当前窗口距离减去鼠标距div最右端位置

topY=startY-sY;//鼠标所能移动最上端是当前鼠标距div上边距的位置

bottomY=winH-contH+topY;//鼠标所能移动最下端是当前窗口距离减去鼠标距div最下端位置

},

touchmove:function(e){

e.preventDefault();

moveX=e.originalEvent.targetTouches[0].pageX;//移动过程中X轴的坐标

moveY=e.originalEvent.targetTouches[0].pageY;//移动过程中Y轴的坐标

//console.log("moveX="+moveX+"************moveY="+moveY);

if(moveX

if(moveX>rightX){moveX=rightX;}

if(moveY

if(moveY>bottomY){moveY=bottomY;}

$(this).css({

"left":moveX+sX-startX,

"top":moveY+sY-startY,

})

},

})

})

7d3a28bd1de083c26d499fa800d63f70.png赞1

1c1ddb8c862eb180f4f61cf42d24abcf.png

405d94d19b971e8d6179ba8cf4891f93.png踩0

发表评论:

昵称

邮件地址 (选填)

个人主页 (选填)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值