Javascript 使用浏览器后退按钮进行ExtJS应用程序导航
我有一个ExtJS(版本4.1.1)应用程序,它只有一个JSP页面,但使用ExtJS组件创建了多个屏幕。单击浏览器中的“上一步”按钮时,我希望在应用程序中显示上次访问的屏幕,而不是使用浏览器的默认行为重定向到上次访问的网页 如何实现这一点?您需要使用该类,该类旨在通过浏览器的“后退”和“前进”按钮跟踪导航。其基本思想是,当用户访问应用程序中的新屏幕时,您使用该屏幕的标识符令牌进行调用。然后,当用户单击浏览器的“后退”按钮时,将使用用户导航回的屏幕的标记触发一个事件,您将使用该标记在应用程序中重新显示该屏幕 ExtJS文档中有一个示例,说明了如何做到这一点。代码的关键部分如下所示:Javascript 使用浏览器后退按钮进行ExtJS应用程序导航,javascript,html,extjs,Javascript,Html,Extjs,我有一个ExtJS(版本4.1.1)应用程序,它只有一个JSP页面,但使用ExtJS组件创建了多个屏幕。单击浏览器中的“上一步”按钮时,我希望在应用程序中显示上次访问的屏幕,而不是使用浏览器的默认行为重定向到上次访问的网页 如何实现这一点?您需要使用该类,该类旨在通过浏览器的“后退”和“前进”按钮跟踪导航。其基本思想是,当用户访问应用程序中的新屏幕时,您使用该屏幕的标识符令牌进行调用。然后,当用户单击浏览器的“后退”按钮时,将使用用户导航回的屏幕的标记触发一个事件,您将使用该标记在应用程序中重新
function onTabChange(tabPanel, tab) {
var newToken;
// ... construct a token for the new tab ...
oldToken = Ext.History.getToken();
if (oldToken === null || oldToken.search(newToken) === -1) {
Ext.History.add(newToken);
}
}
// ...
Ext.History.on('change', function(token) {
if (token) {
// ... set active tab based on token ...
}
});
如果应用程序中有很多屏幕,使用Ext.util.History
通常需要设置很多样板文件,因此ExtJS 5添加了内置帮助管理这些内容。ExtJS4有一些扩展是为了完成同样的事情,比如Bruno Tavares