0

我的网页中有一个选项卡小部件,我在其中动态添加选项卡,我试图删除一个选项卡工作正常,但无法显示上一个选项卡,即使它处于活动状态,相应的 div 也不可见。

我正在使用的代码是:

tabs.delegate("span.ui-icon-close", "click", function () {              
            var panelId = $(this).closest("li").remove().attr("aria-controls");
            $("#" + panelId).remove();
            tabs.tabs("refresh");            
        });

这必须正常工作,但没有

所以我尝试通过在上面的函数中添加下面的代码行来展示我自己的 div。

 $(
    $(this).closest("li").prev("li").children("a").attr("href")
  )
  .attr("aria-expanded", true)
  .attr("aria-hidden", false)
  .css("display", "block");

当我调试我的代码行时,它会强制显示 div,在退出功能后,在插件文件的某个位置,它正在更改 div 设置并使其不可见。

HTML:

   <div id="dynamicTabs" class="ui-tabs ui-widget ui-widget-content ui-corner-all" style="width:960px;">
       <ul class="ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all" role="tablist">
            <li class="ui-state-default ui-corner-top" role="tab" tabindex="-1" aria-controls="tabs-1" aria-labelledby="ui-id-13" aria-selected="false">
                <a id="ui-id-13" class="ui-tabs-anchor" href="#tabs-1" role="presentation" tabindex="-1">Add</a>
            </li>
            <li class="ui-state-default ui-corner-top ui-tabs-active ui-state-active" role="tab" tabindex="0" aria-controls="tabs-2" aria-labelledby="ui-id-18" aria-selected="true">
                 <a id="ui-id-18" class="ui-tabs-anchor" href="#tabs-2" role="presentation" tabindex="-1">dfbgbb</a>
                 <span class="ui-icon-close">X</span>
           </li>
    </ul>
   <div id="tabs-1" class="ui-tabs-panel ui-widget-content ui-corner-bottom" aria-labelledby="ui-id-13" role="tabpanel" style="display: none;" aria-expanded="false" aria-hidden="true">Tab 1 content.</div>
   <div id="tabs-2" class="ui-tabs-panel ui-widget-content ui-corner-bottom selected" aria-expanded="true" aria-hidden="false" style="display: block;" aria-labelledby="ui-id-18" role="tabpanel">cvxbxcvxcvxcv</div>
</div>

我想脚本中可能存在一些问题,但我无法弄清楚是什么。有没有人有同样的问题或知道任何解决方法请让我知道谢谢......

4

0 回答 0