0

这是我正在使用的代码:

<html>
<head>
<script>
function open_win()
{
window.open(encodeURI("<inserturlhere>"))
}
</script>
</head>
<body>

<input type="button" value="Open Window" onclick="open_win()">
</body>
</html>

它适用于其他网站,如 google、apache。

我已授予对 config.xml 文件中所有域的访问权限。

4

2 回答 2

0

您是指从文件系统提供的本地文件吗?IE。文件://而不是http://?在那种情况下,我认为这是当前 Phonegap 版本的错误。

我一直在使用它作为一种解决方法(打开一个 inappbrowser 实例):

// Image zoom
$('#container').on('tap', '#content.cmscontent img', function() {
    var browser = window.open((navigator.userAgent.indexOf('Android') != -1 ? 'file:///android_asset/www/' : '') + encodeURI($(this).attr('src')), '_blank', 'location=no,toolbar=yes,enableViewportScale=yes,transitionstyle=crossdissolve');
});

请参阅我(navigator.userAgent.indexOf('Android') != -1 ? 'file:///android_asset/www/' : '')在 url 之前添加为前缀。现在它会检测您的应用何时在 Android 上,并在其前面添加本地 URL。

于 2013-08-07T13:08:52.977 回答
0

我认为您在窗口末尾缺少分号(;)。如果写错了,请尝试以下代码

<html>
  <head>
    <script>
      var ref=null;

      function iabLoadStart(event) {
         console.log(event.type + ' - ' + event.url);
      }

      function iabLoadStop(event) {
         console.log(event.type + ' - ' + event.url);
      }

      function iabClose(event) {
         console.log(event.type);
         ref.removeEventListener('loadstart', iabLoadStart);
         ref.removeEventListener('loadstop', iabLoadStop);
         ref.removeEventListener('exit', iabClose);
      }

      function open_win() {
         ref=window.open(encodeURI("<inserturlhere>"),'_blank', 'location=no');
         ref.addEventListener('loadstart', iabLoadStart);
         ref.addEventListener('loadstop', iabLoadStop);
         ref.addEventListener('exit', iabClose);
      }
    </script>
  </head>
  <body>
    <input type="button" value="Open Window" onclick="open_win()">
  </body>
</html> 
于 2013-08-02T05:57:20.157 回答