html手指滑动线条跟随,图片跟随手指滑动

touch事件,给你个简单的事例吧,返回动画什么的你自己完成吧,我是直接返回的。

*{

margin: 0;

padding: 0;

}

html{

width: 100%;

height: 100%;

}

body{

width: 100%;

height: 100%;

position: relative;

/* touch-action: none; */

}

.box{

width: 100px;

height: 100px;

position: absolute;

bottom: 0;

left: 50%;

transform: translateX(-50%);

background: #000;

}

touch('box');

function touch(id){

var obj = document.getElementById(id);

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

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

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

var touch = event.targetTouches[0];

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

var disX=touch.pageX-obj.offsetLeft;

var disY=touch.pageY-obj.offsetTop;

obj.addEventListener('touchmove',move);

function move(event){

//event.preventDefault();

document.documentElement.style.touchAction = 'none';

var touch2=event.targetTouches[0];

//var l=touch2.pageX-disX;

var t=touch2.pageY-disY;

// if(l<0){

//     l=0;

// };

// if(l>document.documentElement.clientWidth-obj.offsetWidth){

//     l=document.documentElement.clientWidth-obj.offsetWidth

// };

if(t<0){

t=0;

};

if(t>document.documentElement.clientHeight-obj.offsetHeight){

t=document.documentElement.clientHeight-obj.offsetHeight;

};

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

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

};

obj.addEventListener('touchend',chend);

function chend(event){

if(obj.offsetTop<150){

alert('成功');

obj.style.top='auto';

obj.style.bottom='0px';

}else{

obj.style.top='auto';

obj.style.bottom='0px';

};

document.documentElement.style.touchAction = 'auto';

obj.removeEventListener('touchmove',move);

obj.removeEventListener('touchend',chend);

};

};

}, false);

};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值