最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

H5做出手机摇一摇功能的实现步骤

来源:动视网 责编:小采 时间:2020-11-27 15:27:29
文档

H5做出手机摇一摇功能的实现步骤

H5做出手机摇一摇功能的实现步骤:今天教大家用HTML5来在网页里实现一个很炫酷的功能,手机摇一摇。如果你之前做过手机端的开发,可能对于这样的功能非常了解。但是下面,我们将在Web上首次实现这个功能。方向事件deviceorientation该事件实在设备方向发生变化时触发, 使用方法如下;win
推荐度:
导读H5做出手机摇一摇功能的实现步骤:今天教大家用HTML5来在网页里实现一个很炫酷的功能,手机摇一摇。如果你之前做过手机端的开发,可能对于这样的功能非常了解。但是下面,我们将在Web上首次实现这个功能。方向事件deviceorientation该事件实在设备方向发生变化时触发, 使用方法如下;win


今天教大家用HTML5来在网页里实现一个很炫酷的功能,手机摇一摇。如果你之前做过手机端的开发,可能对于这样的功能非常了解。但是下面,我们将在Web上首次实现这个功能。

方向事件deviceorientation

该事件实在设备方向发生变化时触发, 使用方法如下;

window.addEventListener('deviceorientation', orientationHandler, true);

回调函数orientationHandler会接收到一个DeviceOrientationEvent类型参数, 包含以下信息.

属性名 说明

absolute 如果方向数据跟地球坐标系和设备坐标系有差异, 则为true

alpha 设备在alpha方向上旋转的角度, 范围为0-360

beta 设备在Beta方向上旋转的角度, 范围为-180-180

gamma 设备在Gamma方向上旋转的角度, 范围为-90-90

移动事件devicemotion

该事件实在设备位置发生变化时触发

window.addEventListener('devicemotion', motionHandler, false);

该回调函数会接受DeviceMotionEvent类型参数, 包含以下信息.

属性名 说明

acceleration 设备在X,Y,Z三个轴的方向上移动的距离, 以抵消重力加速度

accelerationIncludingGravity 设备在X,Y,Z三个轴方向移动的距离, 包含重力加速度

rotationRate 设备在Alpha, Beta, Gamma三个方向旋转的角度

interval 从设备获取数据的频率, 单位是毫秒

代码部分

<!DOCTYPE html>
<html>
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>摇一摇</title>
</head>
<body>
 <p>
 摇一摇
 </p>
 <script>
 const SHAKE_SPEED = 300;
 let lastTime = 0;//上次变化的时间
 let x = y = z = lastX = lastY = lastZ = 0;//位置变量初始化
 
 function motionHandler(event) {
 let acceleration = event.accelerationIncludingGravity;
 let curTime = Date.now();//取得当前时间
 if ((curTime - lastTime) > 120) {
 let diffTime = curTime - lastTime;
 lastTime = curTime;
 x = acceleration.x;
 y = acceleration.y;
 z = acceleration.z;
 //计算摇动速度
 let speed = Math.abs(x + y + z - lastX - lastY - lastZ) / diffTime * 1000;
 if (speed > SHAKE_SPEED) {
 alert("你摇动了手机");
 }
 lastX = x;
 lastY = y;
 lastZ = z;
 }
 }
 if(window.DeviceMotionEvent) {
 window.addEventListener('devicemotion', motionHandler, false);
 } else {
 alert("你的设备不支持位置感应");
 }
 </script>
</body>
</html>

相信看了这些案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

相关阅读:

html5中的DOM编程的实现步骤

HTML里的事件怎么使用

用canvas做出时钟实现步骤

文档

H5做出手机摇一摇功能的实现步骤

H5做出手机摇一摇功能的实现步骤:今天教大家用HTML5来在网页里实现一个很炫酷的功能,手机摇一摇。如果你之前做过手机端的开发,可能对于这样的功能非常了解。但是下面,我们将在Web上首次实现这个功能。方向事件deviceorientation该事件实在设备方向发生变化时触发, 使用方法如下;win
推荐度:
标签: 功能 实现 h5
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top