H5 steps to implement the mobile phone shake function
Today I will teach you how to use HTML5 to implement a very cool function on a web page. Just shake your phone. If you have done mobile development before, you may be very familiar with such functions. But below, we will implement this feature for the first time on the Web.
OrientationEventdeviceorientation
This event is triggered when the device orientation changes. The usage method is as follows;
window.addEventListener('deviceorientation', orientationHandler , true);
Callback functionorientationHandler will receive a DeviceOrientationEvent type parameter, including the following information.
AttributeName description
absolute If the direction data is different from the earth coordinate system and the device coordinate system, it is true
alpha is the angle of rotation of the device in the alpha direction, ranging from 0-360
beta The device is in The angle of rotation in the Beta direction, the range is -180-180
gamma The angle of the device rotation in the Gamma direction, the range is -90-90
Movement event devicemotion
This event is triggered when the device position changes
window.addEventListener('devicemotion', motionHandler, false);
This callback function will accept DeviceMotionEvent type parameters, including the following information.
Attribute name description
acceleration The distance the device moves in the directions of X, Y, and Z axes to offset the acceleration of gravity
accelerationIncludingGravity The distance the device moves in the three directions of The distance moved in the axis direction, including the acceleration of gravity
rotationRate The angle of rotation of the device in the three directions of Alpha, Beta, and Gamma
interval The frequency of obtaining data from the device, in milliseconds
Code part
<!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>
I believe you have mastered the methods after reading these cases. For more exciting information, please pay attention to php Chinese website Other related articles!
Related reading:
Implementation steps of DOM programming in html5
Use canvas to make clock implementation steps
The above is the detailed content of H5 steps to implement the mobile phone shake function. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Guide to Table Border in HTML. Here we discuss multiple ways for defining table-border with examples of the Table Border in HTML.

This is a guide to Nested Table in HTML. Here we discuss how to create a table within the table along with the respective examples.

Guide to HTML margin-left. Here we discuss a brief overview on HTML margin-left and its Examples along with its Code Implementation.

Guide to HTML Table Layout. Here we discuss the Values of HTML Table Layout along with the examples and outputs n detail.

Guide to HTML Input Placeholder. Here we discuss the Examples of HTML Input Placeholder along with the codes and outputs.

Guide to the HTML Ordered List. Here we also discuss introduction of HTML Ordered list and types along with their example respectively

Guide to Moving Text in HTML. Here we discuss an introduction, how marquee tag work with syntax and examples to implement.

Guide to HTML onclick Button. Here we discuss their introduction, working, examples and onclick Event in various events respectively.
