Javascript 如何在刷新时防止jquery ui默认第一个选项卡处于活动状态
我使用Javascript 如何在刷新时防止jquery ui默认第一个选项卡处于活动状态,javascript,jquery,html,ajax,jquery-ui,Javascript,Jquery,Html,Ajax,Jquery Ui,我使用jqueryui作为我网站的导航,在每个选项卡中,我放置了一些链接到基本上由ajax动态加载的页面。除了一个问题外,每件事都很顺利 问题 我的问题是,当我单击“其他”然后单击“第一个选项卡”并从浏览器中单击“刷新”时,它会将我带回默认的第一个选项卡。正如我所说,我使用了这些标签内的链接,这些链接应该是我的网站的导航,但与这个问题,这是不好的!例如,如果我单击tabtwo,然后单击其中的任何一个链接,即子菜单1.1及其正常工作和加载内容,但当我点击浏览器刷新按钮时会发生什么情况,它会将我带回
jqueryui
作为我网站的导航,在每个选项卡中,我放置了一些链接到基本上由ajax动态加载的页面。除了一个问题外,每件事都很顺利
问题
我的问题是,当我单击“其他”然后单击“第一个选项卡”并从浏览器中单击“刷新”时,它会将我带回默认的第一个选项卡。正如我所说,我使用了这些标签内的链接,这些链接应该是我的网站的导航,但与这个问题,这是不好的!例如,如果我单击tabtwo
,然后单击其中的任何一个链接,即子菜单1.1
及其正常工作和加载内容,但当我点击浏览器刷新按钮时会发生什么情况,它会将我带回tabone
,尽管我仍在tabtwo
子菜单1.1
这是代码
<div id="tabs">
<ul>
<li><a href="#fragment-1"><span>One</span></a></li>
<li><a href="#fragment-2"><span>Two</span></a></li>
<li><a href="#fragment-3"><span>Three</span></a></li>
</ul>
<div id="fragment-1">
<ul>
<li><a href="#SubMenu 1.1">SubMenu 1.1</a></li>
<li><a href="#SubMenu 1.2">SubMenu 1.2</a></li>
<li><a href="#SubMenu 1.3">SubMenu 1.3</a></li>
<li><a href="#SubMenu 1.4">SubMenu 1.4</a></li>
<li><a href="#SubMenu 1.5">SubMenu 1.5</a></li>
<ul>
</div>
<div id="fragment-2">
<ul>
<li><a href="#SubMenu 2.1">SubMenu 2.1</a></li>
<li><a href="#SubMenu 2.2">SubMenu 2.2</a></li>
<li><a href="#SubMenu 2.3">SubMenu 2.3</a></li>
<li><a href="#SubMenu 2.4">SubMenu 2.4</a></li>
<li><a href="#SubMenu 2.5">SubMenu 2.5</a></li>
</ul>
</div>
<div id="fragment-3">
<ul>
<li><a href="#SubMenu 3.1">SubMenu 3.1</a></li>
<li><a href="#SubMenu 3.2">SubMenu 3.2</a></li>
<li><a href="#SubMenu 3.3">SubMenu 3.3</a></li>
<li><a href="#SubMenu 3.4">SubMenu 3.4</a></li>
<li><a href="#SubMenu 3.5">SubMenu 3.5</a></li>
</ul>
</div>
</div>
还使用了来自官方网站jqueryui
的不同值,但没有按照我的要求工作
$( ".selector" ).tabs({
active: 1
});
我会非常感激你的帮助。谢谢使用
active
属性而不是selected
和激活
而不是选中的处理程序
另外,ui.index
未定义,因为该属性在ui
对象上不可用
改为使用$(ui.newTab[0]).index()
-jQuery对象提供当前的li
,您可以获得它的索引
$("#tabs").tabs({
active: selected,
activate: function(event, ui) {
localStorage.currentTab = $(ui.newTab[0]).index()
}
});
始终使用开发人员工具调试或检查任何错误。这使生活更容易
使用active
属性而不是选中的
和激活
而不是选中的处理程序
另外,ui.index
未定义,因为该属性在ui
对象上不可用
改为使用$(ui.newTab[0]).index()
-jQuery对象提供当前的li
,您可以获得它的索引
$("#tabs").tabs({
active: selected,
activate: function(event, ui) {
localStorage.currentTab = $(ui.newTab[0]).index()
}
});
始终使用开发人员工具调试或检查任何错误。这使生活更容易
感谢您的支持,我会在一分钟内检查,告诉您发生了什么希望这一切都会成功。感谢您的支持,它会成功,但我还有一个问题!我可以在我的主选项卡one
two
和two
中使用页面链接,这样当单击它们时也会加载默认内容。由于主选项卡是用href
链接到子链接id
的,我不知道该怎么做?你能提供一个例子吗?例如,我想在主选项卡one
中放置url#browse.php
,正如你在上面的代码中看到的,他已经有一个url,它通过id链接到它的子选项卡,我想放置#browse.php
而不是#fragment-1
。我试着把它放在那里,但没有成功。或者任何其他方式将父选项卡链接到子选项卡,使url变得免费,以便我能够将我想要的url放在那里。是的!但它只显示子选项卡,不加载页面。正如我前面所说的,我之所以想把browse.php
而不是##fragment-1
,是因为我想在单击这些选项卡以及显示子选项卡时加载该页面。你明白我在做什么吗?谢谢你的支持,我会检查一下,告诉你发生了什么,希望这能起作用。谢谢你,它能起作用,但我还有一个问题!我可以在我的主选项卡one
two
和two
中使用页面链接,这样当单击它们时也会加载默认内容。由于主选项卡是用href
链接到子链接id
的,我不知道该怎么做?你能提供一个例子吗?例如,我想在主选项卡one
中放置url#browse.php
,正如你在上面的代码中看到的,他已经有一个url,它通过id链接到它的子选项卡,我想放置#browse.php
而不是#fragment-1
。我试着把它放在那里,但没有成功。或者任何其他方式将父选项卡链接到子选项卡,使url变得免费,以便我能够将我想要的url放在那里。是的!但它只显示子选项卡,不加载页面。正如我前面所说的,我之所以想把browse.php
而不是##fragment-1
,是因为我想在单击这些选项卡以及显示子选项卡时加载该页面。你明白我想做什么吗?