jQuery UI Tabs不处理资源

时间:2012-08-06 19:22:02

标签: jquery jquery-ui colorbox jquery-ui-tabs

我有三个页面,admin.phpuser_admin.phpclient_admin.php以及相应的JS源文件admin.jsuser_admin.jsclient_admin.js,我遇到的问题是jQuery UI的标签没有正确处理资源。

admin.phpuser_admin.phpclient_admin.php的占位符,其中每个都设置为动态加载的标签。以下是admin.php的正文:

<body>
    <div id="tabs" style="width: 1000px; margin-left: auto; margin-right: auto;">
        <ul>
            <li><a href="user_admin.php">User Admin</a></li>
            <li><a href="client_admin.php">Client Admin</a></li>
        </ul>
        <div id="user_admin">
        </div>
        <div id="client_admin">
        </div>
    </div>
</body>

使用以下代码初始化jQuery-UI选项卡:

$( "#tabs" ).tabs(
{
    cookie      : { expires: 9999 },
    cache       : false,
    ajaxOptions :
    {
        error : function( xhr, status, index, anchor )
        {
            $( anchor.hash ).html( "Error: could not load this tab" );
        }
    },
    show : function( event, ui )
    {
        previous_tab = ui.index;
        $( "#ui-tabs-" + previous_tab ).empty();
    }
});

问题在于user_admin.php,我在其中包含colorbox并将其附加到弹出另一个页面的链接(带有href到我要加载的页面),如下所示:

$( '.modal' ).colorbox(
{
    iframe          : true,
    slideshow       : false,
    title           : false,
    innerWidth      : 600,
    innerHeight     : 420,
    returnFocus     : false,
    slideshowStart  : "",
    slideshowStop   : "",
    current         : "",
    previous        : "",
    next            : "",
    close           : ""
});

这有效...但是,如果我尝试点击客户端管理标签,然后返回用户管理标签并点击再次启动colorbox的链接,它将加载{{1}两次,内容相同,每次回到用户管理标签页时都会保留堆叠颜色框。

所以,回到我的观点......如何让jQuery UI转储所有资源,包括当前标签的JS库?

1 个答案:

答案 0 :(得分:0)

没关系,我搞砸了。我正在做的是在选项卡中包含colorbox(和其他插件),而不是仅仅是html内容。