Heute zeige ich Ihnen, wie Sie mit HTML5 eine sehr coole Funktion auf der Webseite implementieren. Schütteln Sie einfach Ihr Telefon. Wenn Sie bereits Erfahrung mit der mobilen Entwicklung haben, sind Sie möglicherweise mit solchen Funktionen bestens vertraut. Im Folgenden werden wir diese Funktion jedoch zum ersten Mal im Web implementieren.
AusrichtungEreignisGeräteorientierung
Dieses Ereignis wird ausgelöst, wenn sich die Geräteausrichtung ändert. Die Verwendungsmethode ist wie folgt:
window.addEventListener('deviceorientation ', OrientierungHandler , true);
Callback-FunktionorientationHandler erhält einen DeviceOrientationEvent-Typparameter, einschließlich der folgenden Informationen.
AttributNamensbeschreibung
absolut Wenn sich die Richtungsdaten vom Erdkoordinatensystem und dem Gerätekoordinatensystem unterscheiden, sind sie wahr
Alpha Der Drehwinkel des Geräts in Alpha-Richtung, im Bereich von 0-360
Beta-Gerät in Der Drehwinkel in der Beta-Richtung, im Bereich von -180-180
Gamma Der Drehwinkel des Geräts in der Gamma-Richtung, im Bereich von -90-90
Bewegungsereignis devicemotion
Dieses Ereignis wird ausgelöst, wenn sich die Geräteposition ändert
window.addEventListener('devicemotion', motionHandler, false);
Dieser Rückruf Die Funktion akzeptiert Parameter vom Typ DeviceMotionEvent, einschließlich der folgenden Informationen.
Beschreibung des Attributnamens
Beschleunigung Die Distanz, die das Gerät in Richtung der X-, Y- und Z-Achse zurücklegt, um die Erdbeschleunigung auszugleichen
accelerationInclusiveGravity Die Distanz, die das Gerät in den drei Richtungen X, Y und Z zurücklegt. Die Distanz, die in Achsenrichtung zurückgelegt wird, einschließlich der Erdbeschleunigung.
rotationRate Der Drehwinkel des Geräts in den drei Richtungen Alpha, Beta und Gamma
Intervall Die Häufigkeit des Datenabrufs vom Gerät in Millisekunden
Codeteil
<!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>
Ich glaube, dass Sie die Methode beherrschen, nachdem Sie diese Fälle gelesen haben. Weitere spannende Inhalte finden Sie auf der chinesischen PHP-WebsiteAndere verwandte Artikel!
Verwandte Lektüre:
Implementierungsschritte der DOM-Programmierung in HTML5
So verwenden Sie Ereignisse in HTML
Verwenden Sie Canvas, um Schritte zur Uhrimplementierung durchzuführen
Das obige ist der detaillierte Inhalt vonH5 Schritte zur Implementierung der Handy-Shake-Funktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!