我正在尝试使用 jQuery UI 选项卡将多页网站重写为 SPA。在 shell 页面中,一个选项卡引用页面内的 id,而其余选项卡通过 AJAX 加载其他页面。它看起来像这样:
<div id="tabs">
<ul id="nav">
<li><a href="#home">HOME</a></li>
<li><a href="ajax/learn.html">LEARN</a></li>
<li><a href="ajax/listen.html">LISTEN</a></li>
<li><a href="ajax/support.html">SUPPORT</a></li>
<!--etc.-->
</ul>
<div id="home">
<!--blah blah blah-->
</div>
</div>
在learn.html
中,我有另一组以相同方式设置的 UI 选项卡:
<div id="tabs2">
<ul id="nav2">
<li><a href="#about">About Us</a></li>
<li><a href="ajax/sponsors.html">Sponsors & Donors</a></li>
<li><a href="ajax/staff.html">Staff & Board</a></li>
<!--etc.-->
</ul>
<div id="about">
<!--blah blah blah-->
</div>
</div>
在单击 内的选项卡时会出现问题learn.html
:单击此 AJAX 选项卡中的 AJAX 选项卡之一的事件会冒泡到窗口,sponsors.html
或者加载任何代替 shell 页面的内容。
我试过event.stopPropagation()
了,但没有用;在标签上使用event.preventDefault
首先阻止了标签功能。还需要做什么?