javascript - 使用 URL 中的 # 访问选项卡面板中的不同选项卡 - ExtJS

标签 javascript extjs tabs

我创建了一个简单的选项卡面板,包含 3 个选项卡。
创建页面时会显示第一个选项卡。
假设 URL 是/welcome

我想知道是否可以将每个选项卡绑定(bind)到 # ?
如果您单击第一个选项卡,则网址将变为/welcome#1,如果您单击第二个选项卡,则网址将变为/welcome#2,依此类推
我认为这是可能的,因为我已经对可以更新/销毁的区域执行了此操作,但主要问题是如果您在 URL 中键入/welcome#3 然后加载页面,将显示第一个选项卡,而不是第三。

有没有办法实现这个目标?

谢谢。

最佳答案

在 app.js 的 init 函数中,您可以通过

恢复您的 url
document.location.href

提取(由于拆分)您选择的选项卡并将其添加到静态变量中。

在 app.js 的启动函数中,通过

获取 tabPanel 对象
   var tabPanel =  Ext.ComponentQuery.query('#itemIdOfYourTabPanel')[0]

并像这样设置选择选项卡:

tabPanel.setActiveTab(tab);

关于javascript - 使用 URL 中的 # 访问选项卡面板中的不同选项卡 - ExtJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22477481/

相关文章:

html - 未知背景颜色的 CSS 继承实际上是透明的

javascript - TabPanel焦点问题

javascript - 如何在客户端设置自定义验证器 isValid 属性?

c# - JavaScript 函数参数中的 '\' 是什么意思?

javascript - 如何将两点之间的线从曲线更改为具有一个 Angular 点的直线

javascript - Extjs 获取选中图片的名称

javascript - ShadowMap 未使用 Three.js 在网格上转换阴影

javascript - 提交前的 Extjs 表单验证

javascript - 如何获取不同行中的显示字段

javascript - 如何使用 Javascript 在选项卡内使用 hashchange 更新 url