HTML input 四个角拖动,JS实现滑块拖动事件的思路

touch事件和mouse事件大致一样的,给你个例子吧

Title

*{

margin: 0;

padding: 0;

}

.box{

position: relative;

width: 100px;

background-color: #000;

height: 4px;

margin: 100px;

}

.box span{

position: absolute;

height:10px;

width: 10px;

border-radius: 50%;

margin-top: -3px;

left:0;

background-color: red;

}

0

var obj = document.querySelector("span");

var text = document.querySelector(".text");

obj.addEventListener('touchstart', function(event) {

event.preventDefault();

// 如果这个元素的位置内只有一个手指的话

if (event.targetTouches.length == 1) {

var touch = event.targetTouches[0];

// 把元素放在手指所在的位置

var disX=touch.pageX-obj.offsetLeft;

var disY=touch.pageY-obj.offsetTop;

var box=document.querySelector(".box");

var width= box.clientWidth-obj.offsetWidth;

obj.addEventListener('touchmove',move);

function move(event){

var touch2=event.targetTouches[0];

var l=touch2.pageX-disX;

var t=touch2.pageY-disY;

if(l<0){

l=0;

};

if(l>width){

l=width;

};

if(t<0){

t=0;

};

if(t>0){

t=0;

};

obj.style.left=l+'px';

obj.style.top=t+'px';

text.innerHTML = (l/width).toFixed(1);

};

obj.addEventListener('touchend',chend);

function chend(event){

obj.removeEventListener('touchmove',move);

obj.removeEventListener('touchend',chend);

};

};

}, false);

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值