2017-07-06 56 views
0

我嘗試使用custom-url-scheme打開cordova-app。重新加載頁面後保存/通過/ GET事件

當我觸發事件後使用我的作品罰款是這樣的:

<input id="myInput" onkeydown="checkKey(event);"/> 

function checkKey(event) { 
    if (event.which == 13 || event.keyCode == 13) { 
     window.open('blablabla'); // call the App 
    } 
}; 

不幸的是在我的情況下按Enter鍵,值必須通過後臺系統進行檢查,至極然後重新加載這一頁。

所以我想這:

document.addEventListener('DOMContentLoaded', function() { 
    window.open('blablabla'); // call the App 
}, false); 

這裏的問題是,有沒有活動的事件,因此Chrome使得navigation.block的應用程序無法打開。

有沒有辦法通過重新加載頁面來丟失事件?

回答

0

爲什麼不:

  1. 防止在印刷機上的默認行爲進入
  2. 通過AJAX
  3. 送價值得到的迴應
  4. 打開應用程序
  5. 列表項

結論:

  1. 問題解決
  2. 無需重新加載頁面
  3. 更快的最終結果
0

而不是DOMContentLoaded情況下,您可以只使用ondeviceready事件。在此,在初始頁面(索引頁)onDeviceReady()上,您可以進行驗證並在此之後調用應用程序的第一頁。

我們通常在將用戶引導至應用程序的主頁面之前先對登錄頁面執行此操作。例如 -

document.addEventListener("deviceready", onDeviceReady, false); 

function onDeviceReady() { 
    //get the value 
    //check event through backend system 
    window.open('blablabla'); //call the App's first page 
} 

[deviceready][1]文檔報價 -

的deviceready事件有所不同,從別人的行爲。 在deviceready事件觸發後註冊的任何事件處理函數都會立即調用其回調函數。