標籤:eve 一個 mozilla bubuko font back 擷取 本機存放區 dev
:在一個頁面中做了一個倒計時,然後使用者想離開頁面做其他事情,需求是離開頁面之後把時間儲存,下一次進來繼續的時候時間還是上次離開的時間
第一次我用的事件是: // window.onbeforeunload = function() {。。。}但是ios移動端是沒有任何反應的,也就是不相容。
第二次我用的是: window.addEventListener(‘pagehide‘, function () {....})完美解決。
- onbeforeunload 支援的手機瀏覽器見 WindowEventHandlers/onbeforeunload
- 對於 Safari 瀏覽器可以使用
pagehide
,詳見 Handling Events
window.addEventListener(‘pagehide‘, function () { // localStorage.setItem("selftestid",selftestid); // localStorage.setItem("remainderlength",remainderlength); console.log(selftestid) console.log(remainderlength) $.ajax({ type: ‘post‘, url: "...", type: ‘post‘, async: false, data: { key: key, id: selftestid, remainderlength: remainderlength//時間儲存後台 }, dataType: ‘json‘, success: function(result) { console.log(result); } }) // }});
在這裡我最初的思想是放在本機存放區中,但是後來一想如果使用者在本次操作的網頁和下次操作的手機如果不一樣,那麼是擷取不到本機存放區的內容的,所以就存在伺服器中了
pc端網頁,移動端網頁(andorid、ios)離開頁面做一個時間儲存