[英]eventlistener for backbutton not working in cordova app with multiple html files
我有一個適用於Android的html5 / jquery / cordova應用,並且需要控制Android后退按鈕。 該應用程序包含3個html文件,每個文件包含3個div,其中data-role ='page':
菜單在3個文件之間導航,每個頁面都有一個按鈕導航到下一頁。
為了控制Android document.addEventListener("backbutton", onBackKeyDown, false);
的行為,每個文件都包含一個事件監聽器: document.addEventListener("backbutton", onBackKeyDown, false);
我的scripts.js
文件包含function onBackKeyDown() {...}
,其中指定了所需的行為。 現在,我對該功能的內容沒有任何疑問。
(僅供參考:當我按下#index01
我想退出該應用程序,當我按下#cars01
或#cities01
我想導航至#index01
,當我進入其他頁面之一時,導航到“上一個”頁面。但是:我的問題與該導航無關!)
我確實遇到的問題是,僅當我使用index.html時才觸發onBackKeyDown
。 每當我導航到cars.html或citys.html,從那里導航到子頁面之一,然后按Android onBackKeyDown
就永遠不會調用我的功能onBackKeyDown
。 我已經通過將alert("backbutton pressed");
作為函數的第一行。 此警報僅顯示在index.html上,而不顯示在其他兩個文件上。
所以我對您的問題是:有人知道為什么這行不通嗎? 或者-甚至更好-任何人都可以提供解決方案嗎? 我已經掙扎了好幾個星期了。
感謝您的評論,他們為我提供了正確的方向。 由於我沒有在應用程序中使用路由,只是“基本” html頁面流,所以我意識到所有頁面周圍都沒有容器。
此外,后退按鈕事件只是cordova庫的一部分。 直到現在,我只在主頁上需要它。 但是,由於我想在所有html文檔中都具有backbutton功能, 因此解決方案是將cordova.js添加到每個html文檔中 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.