0

我的页面非常简单。
运行时,只显示一个按钮。单击该按钮时,会打开 inAppBrowser 并加载页面“1.html”。1.html里面还有一个按钮,点击会变成2.html。
我的目标:
1.点击1.html上的按钮后,会变成2.html(完成)。
2.每次inAppBrowser中的url发生变化时,提醒url。下面是 index.html 的代码:

<!DOCTYPE html>
<html>
  <head>
    <title>InAppBrowser.addEventListener Example</title>
    <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
    <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
    <script type="text/javascript" charset="utf-8">

    // Wait for device API libraries to load
    //
    document.addEventListener("deviceready", onDeviceReady, false);

    // device APIs are available
    //
    function onDeviceReady() {
        $("#btn").click(function(){
            var ref = window.open('1.html', '_blank', 'location=yes');
            ref.addEventListener('loadstop', function(event) { alert('stop: ' + event.url); });
        });
    }

    </script>
  </head>
  <body>
    <button id="btn">click</button>
  </body>
</html>

“1.html”上有一个按钮。如果被点击,转到“2.html”。这是1.html的代码:

<!DOCTYPE html>
<html>
  <head>
    <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
    <script type="text/javascript" charset="utf-8">
        $(function(){
            $('#btn').click(function(){
                window.href.location = '2.html';
            });
        });
    </script>
  </head>
  <body>
    <button id="btn">Test</button>
    <div id="msg"></div>
  </body>
</html>

每次 inAppBrowser 的 url 都会改变。这会触发 loadstop 事件吗?如果是,为什么我不能让它工作。如果没有,我该如何实施?

4

2 回答 2

1

您需要检查config.xml中是否正确配置了inappbrowser的插件。这可以在在线 phonegap 构建部分或 config.xml 中进行验证。

config.xml 中 android 的配置为:

<gap:plugin name="org.apache.cordova.inappbrowser" />
于 2014-03-04T17:34:57.577 回答
0

1.html中,将代码从 更改window.href.location = '2.html';window.location.href = '2.html';。然后,当您在 1.html 上并单击按钮时,它实际上会更改 URL 并提醒新 URL。

于 2013-10-28T14:48:04.090 回答