2015-10-15 71 views
0

在我的web应用程序中,我有一个用户可以使用箭头键浏览的项目(基因名称)数组。发生这种情况时,我改变浏览器的URL以反映新的选择:处理浏览器中的后退按钮事件

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

我这样做,以便用户可以复制更改的URL以及以后,输入网址加载我与基因的Web应用程序数据集。此设置似乎在当前浏览器中正常工作。

我的问题是我如何处理人们使用箭头键浏览数组中的基因,然后点击浏览器后退按钮的情况。

这将浏览器地址栏中的URL更改为历史记录中的上一个URL中的内容,但此URL更改不会将浏览器加载到该数据。

当用户点击后退按钮时,我是否可以听到一个事件,让我说,触发事件触发加载前一个基因的数据集?

回答

1

你快到了。您已有pushState。你现在需要的是将一个处理程序附加到popstate event。将该处理程序挂接到加载数据的相同函数。