首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

PhoneGap API汉语帮助文档——Compass(罗盘)

2012-08-14 
PhoneGap API中文帮助文档——Compass(罗盘)获得该设备的当前朝向。方法:compass.getCurrentHeadingcompass.w

PhoneGap API中文帮助文档——Compass(罗盘)
获得该设备的当前朝向。
方法:

  • compass.getCurrentHeading
  • compass.watchHeading
  • compass.clearWatch

    参数:
    • compassSuccess
    • compassError
    • compassOptions

      compass.getCurrentHeading 
      获取罗盘的当前朝向。



      简单的范例:
      1. avigator.compass.getCurrentHeading(compassSuccess, compassError, compassOptions);
      复制代码说明:罗盘是一个检测设备方向或朝向的传感器,使用度作为衡量单位,取值范围从0度到359.99度。
      通过compassSuccess回调函数返回罗盘朝向数据

      支持的平台:
      • Android
      • iPhone

        简单的范例:
        1. function onSuccess(heading) { alert('Heading: ' + heading); } function onError() { alert('onError!'); } navigator.compass.getCurrentHeading(onSuccess, onError);
        复制代码完整的范例:
        1.     <!DOCTYPE html> <html> <head> <SCRIPT type=text/javascript charset=utf-8 src="phonegap.js"></SCRIPT> <SCRIPT type=text/javascript charset=utf-8>  
        2.           
        3.         // 等待加载PhoneGap  
        4.         document.addEventListener("deviceready", onDeviceReady, false);  
        5.           
        6.         // PhoneGap加载完毕  
        7.         function onDeviceReady() {  
        8.             navigator.compass.getCurrentHeading(onSuccess, onError);  
        9.         }  
        10.           
        11.         // onSuccess: 返回当前的朝向数据  
        12.         function onSuccess(heading) {  
        13.             alert('Heading: ' + heading);  
        14.         }  
        15.           
        16.         // onError: 返回朝向数据失败  
        17.         function onError() {  
        18.             alert('onError!');  
        19.         }  
        20.           
        21.     </SCRIPT>   
        22.     </head>   
        23.     <body>  
        24.      <h1>Example</h1>   
        25.     <p>getCurrentHeading</p>   
        26.     </body>   
        27.     </html>  
        复制代码compass.watchHeading 在固定的时间间隔获取罗盘朝向的角度。
        1.     var watchID = navigator.compass.watchHeading(compassSuccess, compassError, [compassOptions]);  
        复制代码说明:罗盘是一个检测设备方向或朝向的传感器,使用度作为衡量单位,取值范围从0度到359.99度。
        compass.watchHeading每隔固定时间就获取一次设备的当前朝向。每次取得朝向后,headingSuccess回调函数会被执行。通过compassOptions对象的frequency参数可以设定以毫秒为单位的时间间隔。
        返回的watch ID是罗盘监视周期的引用,可以通过compass.clearWatch调用该watch ID以停止对罗盘的监视。 

        支持的平台:
        • Android
        • iPhone

          简单的范例:
          1.     function onSuccess(heading) {  
          2.         var element = document.getElementById('heading');  
          3.         element.innerHTML = 'Heading: ' + heading;  
          4.     }  
          5.           
          6.     function onError() {  
          7.         alert('onError!');  
          8.     }  
          9.           
          10.     var options = { frequency: 3000 };      //每隔3秒更新一次  
          11.           
          12.     var watchID = navigator.compass.watchHeading(onSuccess, onError, options);  
          复制代码完整的范例:
          1.     <!DOCTYPE html>  
          2.     <html>  
          3.     <head>  
          4.     <title>Compass Example</title>  
          5.           
          6.     <script type="text/javascript" charset="utf-8" src="phonegap.js"></script>  
          7.     <script type="text/javascript" charset="utf-8">  
          8.           
          9.         // watchID 是当前“watchHeading”的引用  
          10.         var watchID = null;  
          11.           
          12.         // 等待加载PhoneGap  
          13.         document.addEventListener("deviceready", onDeviceReady, false);  
          14.           
          15.         // PhoneGap加载完毕  
          16.         function onDeviceReady() {  
          17.             startWatch();  
          18.         }  
          19.           
          20.         // 开始监视罗盘  
          21.         function startWatch() {  
          22.           
          23.             // 每隔3秒钟更新一次罗盘的朝向信息  
          24.             var options = { frequency: 3000 };  
          25.                  
          26.             watchID = navigator.compass.watchHeading(onSuccess, onError, options);  
          27.         }  
          28.           
          29.         // 停止监视罗盘  
          30.         function stopWatch() {  
          31.             if (watchID) {  
          32.                 navigator.compass.clearWatch(watchID);  
          33.                 watchID = null;  
          34.             }  
          35.         }  
          36.           
          37.         // onSuccess: 返回罗盘的当前朝向  
          38.         function onSuccess(heading) {  
          39.             var element = document.getElementById('heading');  
          40.             element.innerHTML = 'Heading: ' + heading;  
          41.         }  
          42.           
          43.         // onError: 获取罗盘朝向失败  
          44.         function onError() {  
          45.             alert('onError!');  
          46.         }  
          47.           
          48.     </script>  
          49.     </head>  
          50.     <body>  
          51.         <div id="heading">Waiting for heading...</div>  
          52.         <button onclick="startWatch();">Start Watching</button>  
          53.         <button onclick="stopWatch();">Stop Watching</button>  
          54.     </body>  
          55.     </html>  
          复制代码compass.clearWatch停止watch ID参数指向的罗盘监视。

          1. navigator.compass.clearWatch(watchID);  
          复制代码
          • watchID: 由compass.watchHeading返回的引用标示。

            支持的平台:
            • Android
            • iPhone

              简单的范例:
              1.     var watchID = navigator.compass.watchHeading(onSuccess, onError, options);  
              2.           
              3.     // ... 后继处理 ...  
              4.           
              5.     navigator.compass.clearWatch(watchID);  
              复制代码完整的范例:
              1.     <!DOCTYPE html>  
              2.     <html>  
              3.     <head>  
              4.     <title>Compass Example</title>  
              5.           
              6.     <script type="text/javascript" charset="utf-8" src="phonegap.js"></script>  
              7.     <script type="text/javascript" charset="utf-8">  
              8.           
              9.         // watchID是当前 “watchHeading” 的引用  
              10.         var watchID = null;  
              11.           
              12.         // 等待加载PhoneGap  
              13.         document.addEventListener("deviceready", onDeviceReady, false);  
              14.           
              15.         // PhoneGap加载完毕  
              16.         function onDeviceReady() {  
              17.             startWatch();  
              18.         }  
              19.           
              20.         // 开始监视罗盘  
              21.         function startWatch() {  
              22.              
              23.             // 每隔3秒钟更新一次罗盘数据  
              24.             var options = { frequency: 3000 };  
              25.           
              26.             watchID = navigator.compass.watchHeading(onSuccess, onError, options);  
              27.         }  
              28.           
              29.         // 停止监视罗盘  
              30.         function stopWatch() {  
              31.             if (watchID) {  
              32.                 navigator.compass.clearWatch(watchID);  
              33.                 watchID = null;  
              34.             }  
              35.         }  
              36.           
              37.         // onSuccess: 返回罗盘的当前朝向  
              38.         function onSuccess(heading) {  
              39.             var element = document.getElementById('heading');  
              40.             element.innerHTML = 'Heading: ' + heading;  
              41.         }  
              42.           
              43.         // onError: 获取罗盘朝向失败  
              44.         function onError() {  
              45.             alert('onError!');  
              46.         }  
              47.           
              48.     </script>  
              49.     </head>  
              50.     <body>  
              51.         <div id="heading">Waiting for heading...</div>  
              52.         <button onclick="startWatch();">Start Watching</button>  
              53.         <button onclick="stopWatch();">Stop Watching</button>  
              54.     </body>  
              55.     </html>  
              复制代码compassSuccess 提供罗盘朝向信息的onSuccess回调函数。
              1.     function(heading) { // 进一步处理  
              2.     }  
              复制代码参数:
              • heading:在某一时刻的罗盘朝向角度 (从0度到359.99度之间)。(数字类型)
                范例:
                1. function onSuccess(heading) { alert('Heading: ' + heading); }  
                复制代码compassError 罗盘方法的onError回调函数。
                1.     function() { // 错误处理  
                2.     }  
                复制代码compassOptions 定制检索罗盘朝向的可选参数。

                选项:
                • frequency:多少毫秒获取一次罗盘朝向。(数字类型)(默认值:100)

                  本文来自:http://blog.csdn.net/phonegapcn

热点排行