2013-10-25 5 views
0

Моя страница очень проста.
Когда он работает, отображается только одна кнопка. При нажатии кнопки открывается inAppBrowser и загружается страница «1.html». Существует также кнопка в 1.html, щелкните ее, чтобы она превратилась в 2.html.
Моя цель:
1. После нажатия кнопки на 1.html, она превратится в 2.html (сделано).
2. Каждый раз, когда URL-адрес в файле inAppBrowser изменяется, необходимо указать URL-адрес. Вот код index.html:PhoneGap inAppBrowser loadstop event issue

<!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? Если да, то почему я не могу заставить его работать. Если нет, как я могу это реализовать?

ответ

0

1.html, изменить код от window.href.location = '2.html'; до window.location.href = '2.html';. Затем, когда вы находитесь на 1.html и нажмите кнопку, он фактически изменит URL-адрес и выведет новый URL-адрес.

1

Необходимо проверить, правильно ли настроен плагин для inappbrowser в файле config.xml. Это можно проверить в блоке сборки онлайн-телефонии или в файле config.xml.

Конфигурация для Android в config.xml является:

<gap:plugin name="org.apache.cordova.inappbrowser" /> 
+1

Спасибо. У меня была та же проблема, и это было решением. Я был смущен, потому что 'window.open', казалось, работал без добавления этого плагина. Но это необходимо для обработки событий! –

Смежные вопросы