2015-10-15 69 views
0

在我的web應用程序中,我有一個用戶可以使用箭頭鍵瀏覽的項目(基因名稱)數組。發生這種情況時,我改變瀏覽器的URL以反映新的選擇:處理瀏覽器中的後退按鈕事件

window.history.pushState(null, null, "/" + root_subdir + "/?gene=" + gene_name); 

我這樣做,以便用戶可以複製更改的URL以及以後,輸入網址加載我與基因的Web應用程序數據集。此設置似乎在當前瀏覽器中正常工作。

我的問題是我如何處理人們使用箭頭鍵瀏覽數組中的基因,然後點擊瀏覽器後退按鈕的情況。

這將瀏覽器地址欄中的URL更改爲歷史記錄中的上一個URL中的內容,但此URL更改不會將瀏覽器加載到該數據。

當用戶點擊後退按鈕時,我是否可以聽到一個事件,讓我說,觸發事件觸發加載前一個基因的數據集?

回答

1

你快到了。您已有pushState。你現在需要的是將一個處理程序附加到popstate event。將該處理程序掛接到加載數據的相同函數。