javascript - 如何将 phonegap device.platform 值分配给变量?

标签 javascript android cordova

我想将 device.platform 中的值分配给一个变量,以便稍后在我的程序中检查它。 例如,如果应用程序在黑莓手机上运行,​​我可能希望显示一条自定义消息。

我使用在别处找到的“元素”示例来确保一切正常(确实如此)。但是当我尝试仅将“device.platform”值分配给 devicePlatform 时遇到了问题。

我已经为此奋斗了一个小时,我一定是遗漏了一些相当基本的东西。 有人可以告诉我我做错了什么吗?

谢谢 罗布

<html>
  <head>
    <title>PhoneGap</title>
    <meta name="viewport" content="width=device-width">
    <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
    <script language="JavaScript" type="text/javascript">
      // wait for PhoneGap to load
      document.addEventListener("deviceready", onDeviceReady, false);
      function onDeviceReady() {
        var element = document.getElementById('deviceProperties');
        element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
                            'Device Cordova: '  + device.cordova + '<br />' + 
                            'Device Platform: ' + device.platform + '<br />' + 
                            'Device UUID: '     + device.uuid     + '<br />' + 
                            'Device Version: '  + device.version  + '<br />';
      //
    }
    </script>    

  </head>
  <body>
    <h1>Hello PhoneGap v1.9.0</h1>

    <script>
      var devicePlatform = device.platform;
      document.write("Platform: "+devicePlatform+"<br>");    
    </script>
    <br>
    <p id="deviceProperties">Loading device properties...</p>

  </body>
</html>

最佳答案

尝试放置

var devicePlatform = device.platform;
document.write("Platform: "+devicePlatform+"<br>");

进入onDeviceReady()函数

这应该可以解决问题。

此外,您可能希望定义一个全局范围的变量,例如“platform”,然后在函数 onDeviceReady() 中将 device.platform 分配给该变量。

例子:

var platform = null;
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
  platform = device.platform;
  alert(platform);
}

更新:

我觉得这更接近你要找的东西

<html>
  <head>
    <title>PhoneGap</title>
    <meta name="viewport" content="width=device-width">
    <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
    <script language="JavaScript" type="text/javascript">
      // wait for PhoneGap to load
      document.addEventListener("deviceready", onDeviceReady, false);
      function onDeviceReady() {
        var element = document.getElementById('platformarea');
        element.innerHTML = device.platform;
      //
    }
    </script>    

  </head>
  <body>
    <h1>Hello PhoneGap v1.9.0</h1>

    <p id="platformarea"></p>

  </body>
</html>

关于javascript - 如何将 phonegap device.platform 值分配给变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13186536/

相关文章:

javascript - jQuery 单击/切换显示/隐藏 div 面板

javascript - 将 onclick 函数扩展至 javascript 类

java - 如何在Android Studio中将onClickListener添加到ArrayAdapter

java io ioexception 无法解析来自服务器地理编码器的响应

android - 将值从一个 Activity 传递到另一个 Android 应用程序崩溃

android - 无法将图像从android手机存储上传到带有cordova android标题的facebook

javascript - 带有 Angular JS ng-view 的 Phonegap 无法全屏显示

JavaScript 音频播放器插件在 AngularJS 应用程序中加倍标记

javascript - 如何刷新页面以便我的表不会继续添加到现有表中?

ios - 是否可以从 iOS 上的 inappbrowser/webview 访问相机