Jquery UI-Tabs reacted weired

问题描述 投票:4回答:7

我在使用jQuery用户界面标签时遇到了一个奇怪的问题。

这里是代码:

  <div class="ym-gbox">
    <script>
    $(function() {
        $( "#tabs" ).tabs();
    });
    </script>
            <h1>Versions Übersicht</h1>
    <br />
    <div id="tabs">
        <ul>
            <li><a href="#tabs-1">System Kern</a></li>
            <li><a href="#tabs-2">Anwendungen</a></li>
            <li><a href="#tabs-3">Bibliotheken</a></li>
        </ul>
        <div id="tabs-1">
            <table width="100%" border="0" cellpadding="0" cellspacing="0" class="bordertable">
<tr><th>Name</th><td>System Kern</td></tr>
<tr><th>Version</th><td>1.0.0 </td></tr>
<tr><th>Beschreibung</th><td></td></tr><tr><td colspan="2">System Kern</td></tr>
<tr><th>Webseite</th><td>http://www.dsws.biz</td></tr>
<tr><th>Lizenz</th><td>Dark Star Web Services Source Lizenz</td></tr>
<tr><th>Autor</th><td>
</td></tr>
</table>
        </div>
        <div id="tabs-2">
            b
        </div>
        <div id="tabs-3">
            c
        </div>
    </div>
  </div>

页面加载完成后,整个页面即被加载到选项卡选项卡中。我真的不知道为什么会这样。

jquery html jquery-ui jquery-ui-tabs
7个回答
4
投票

对我来说,这个确切的问题与基本标记有关,而Chris idea所指的点击事件无法解决。如果您的网址被重写为具有完整的绝对网址,例如,通过缓存工具或.htaccess

因此,如果您的标签页被重写为<a href="http://example.com/page/#tab1">tabname</a>

然后,解决方案是在初始化选项卡之前删除完整的URL。以下内容(为了简化起见进行了扩展)删除了所有导致##>

jQuery("#mytabs ul li a").each(function () {
    var current = jQuery(this).attr("href");
    var n = current.indexOf("#");
    jQuery(this).attr("href", current.substr(n));
});

jQuery("#mytabs").tabs( .. )

3
投票

正如用户user2235863所说,您需要从代码中删除基本标记才能使其正常工作。我不知道为什么会这样,但是可以。


1
投票

我也遇到了一个奇怪的问题,那就是该选项卡已加载了整个页面。似乎是一个无限循环,其中选项卡内容一遍又一遍地加载了整个页面。


1
投票

解决方案是从页面中删除HTML 。 (基本标签)


1
投票

如果删除BASE标记在您的站点环境中不起作用(由于使用了URL重写或其他类似技术),解决方案是生成一个包含当前页面完整URL的变量,并将其写入选项卡的开头#tab-number之前的HREF与您的标签ID匹配。这样,jQuery UI将识别出您的选项卡内容在当前页面本地,而不会尝试使用BASE标记中存储的URL通过AJAX加载它。一个PHP示例是:


0
投票

我找到了问题的核心。系统不会阻止默认处理程序被触发。对于链接,它是页面的重定向。如果您在单击处理程序中添加preventDefault并根据您要执行的操作处理click事件(例如,将Tab更改为Selected选项卡),则可以绕过此操作。


0
投票

我也对选项卡有一个奇怪的问题。这是与您不同的问题,但我认为仍然值得与您分享,因为我花了几个小时才能解决它。

© www.soinside.com 2019 - 2024. All rights reserved.