zoukankan      html  css  js  c++  java
  • PhoneGap模仿微信摇一摇功能

    <!DOCTYPE html> 
    <html>
    <head>
    <meta charset="utf-8">
    <title>phonegap_device_network_notification01</title>
    <link href="../jquery.mobile-1.3.2.css" rel="stylesheet" type="text/css"/>
    <script src="../jquery.js" type="text/javascript"></script>
    <script src="../jquery.mobile-1.3.2.js" type="text/javascript"></script>
    <script src="../cordova.js" type="text/javascript"></script>
    <script type="text/javascript" charset="utf-8">
        var watchID = null;
        document.addEventListener("deviceready", onDeviceReady, false); //deviceready
        var oldValue = {
            x: null,
            y: null,
            z: null
        }
        function onDeviceReady() {
            startWatch();
        }
        function startWatch() {
            var options = { frequency: 300 };
    
            watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);
        }
        function stopWatch() {
            if (watchID) {
                navigator.accelerometer.clearWatch(watchID);
                watchID = null;
            }
        }
        // 获取加速度信息成功后的回调函数
        function onSuccess(newValue) {
            var changes = {},
            bound = 2;
            if (oldValue.x !== null) {
                changes.x = Math.abs(oldValue.x-newValue.x);
                changes.y = Math.abs(oldValue.y-newValue.y);
                changes.z = Math.abs(oldValue.z-newValue.z);
            }
            if ((changes.x > bound && changes.y > bound) || (changes.x > bound && changes.z >bound)|| (changes.y > bound && changes.z >bound)) {
                alert('检测到手机晃动');
            }
            oldValue = {
                x: newValue.x,
                y: newValue.y,
                z: newValue.z
            }
            var element = document.getElementById('accelerometer');
            element.innerHTML = 'Acceleration X: ' + newValue.x + '<br />' +
                                'Acceleration Y: ' + newValue.y + '<br />' +
                                'Acceleration Z: ' + newValue.z + '<br />' + 
                                'Timestamp: '      + newValue.timestamp + '<br />';
        }
        // 获取加速度信息失败后的回调函数
        function onError() {
            alert('onError!');
        }
    
        </script>
    </head> 
    <body>
    <div data-role="page">
            <div data-role="header">
                <h1>PhoneGap100实战</h1>
            </div>
            <div data-role="content">
             <div id="accelerometer">监测加速度信息中...</div>
                <button onclick="stopWatch();">停止监测加速度信息</button>        
            </div>        
            <div data-role="footer">
                <h4>&nbsp;</h4>
            </div>
    </div>
    
    </body>
    </html>
  • 相关阅读:
    HTTP状态码详解
    Django QuerySet 进阶
    初识Django
    小白学习之路,网络编程(下)
    小白学习之路,网络编程(上)
    小白学习之路,面向对象补充
    用正则表达式实现的计算器
    小白学习之路,初识面向对象
    小白学习之路,常用模块
    函数补充知识
  • 原文地址:https://www.cnblogs.com/LO-ME/p/4574485.html
Copyright © 2011-2022 走看看