本文实例为大家分享了移动端手指放大缩小的具体代码,供大家参考,具体内容如下
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> <title>缩放</title> <style> #box{width:100px; height:100px; background: red;} html,body{width:100%;height:100%; overflow:hidden;} </style> <script> document.addEventListener('DOMContentLoaded',function() { var c=1;//先定义一个初始值 var oBox=document.getElementById('box'); document.addEventListener('touchstart',function (ev) {//手指点下 var oldC=c;//把初始值放到oldC里面 function getC(ev) { var x1=ev.targetTouches[0].pageX; var y1=ev.targetTouches[0].pageY;//两根手指缩放肯定需要两根手指,【0】第一根手指的Xy的坐标 var x2=ev.targetTouches[1].pageX;//第二根手指的坐标 var y2=ev.targetTouches[1].pageY; var a=x1-x2;//第一根手指的pageX-第二根手指的pageX,这样正好是一个之间三角形 得到两个直角边; var b=y1-y2;//同上 return Math.sqrt(a*a+b*b)//已知两个直角边开平方得出 斜角边 } if(ev.targetTouches.length==2){//判断是否是两根手指 是的话 把两根手指点上去的时候的 斜脚边的初始值 放到 downC里面 var downC=getC(ev); } document.addEventListener('touchmove',function (ev) { //手指移动的时候 if(ev.targetTouches.length==2){//判断移动的时候是否是两根手指 c=getC(ev)/downC+oldC;//这个时候的getC(ev)是move时候的,用移动后的斜脚边的值除没移动的值加上他的初始值, oBox.style.webkitTransform='scale('+c+')';//通过scale----2D缩放转换 } },false) },false) },false) </script> </head> <body> <div id="box"></div> </body> </html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
狼山资源网 Copyright www.pvsay.com
暂无“移动端手指放大缩小插件与js源码”评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。