【问题标题】:jQuery tabs - choose where content panels are createdjQuery 选项卡 - 选择创建内容面板的位置
【发布时间】:2011-10-04 11:04:31
【问题描述】:

我想知道是否可以在指定位置动态创建标签面板?

目前我的标签是通过加载一些 json 动态创建的。我的 div 结构是这样的:

<div id="tabs">
  <ul id="tablist"></ul>
</div>

然后它会动态填充结构,类似于下面...

<div id="tabs">
  <ul id="tablist">
   <li><a href="#panel1">blah1</a></li>
   <li><a href="#panel2">blah2</a></li>
   <li><a href="#panel3">blah3</a></li>
  </ul>
  <div id="panel1">Some content...</div>
  <div id="panel2">Some content...</div>
  <div id="panel3">Some content...</div>
</div>

我想告诉 jQuery 在我选择的父 div 中创建面板 div,例如“#panels”:

<div id="tabs">
  <ul id="tablist"></ul>
</div>
<div id="panels"></div>

这可能吗?谢谢。

仅供参考,我没有使用通用的 ui 选项卡外观,因此不受任何容器设计的约束。

【问题讨论】:

    标签: javascript jquery tabs panels


    【解决方案1】:

    我想知道是否可以在指定位置动态创建标签面板?

    不容易(我看得出来)。

    如果你真的想要,你可以通过

    获得类似的行为
    • 创建第二个无序列表,
    • 更改当前无序列表的样式,使其不显示,
    • 绑定事件,例如单击新列表中的任何选项卡会触发“真实”列表上的“单击”事件。

    或者,您可以采用“其他方式”并通过

    获得类似的行为
    • 创建第二组面板,
    • 更改“真实”面板的样式,使其不显示,
    • 拦截“tabsselect”(和类似事件)并在您的新面板中触发相应的显示更改。

    请注意,jQuery UI 选项卡 API 目前正在进行redesign。有一个 pre-alpha milestone 可用,并且他们被要求为 cmets。将其作为一项功能请求并看看他们说什么当然不会有什么坏处。 (如果没有别的,他们可能有比上面更好的主意。)

    【讨论】:

    • 感谢您的回答 :) 我没有提到的是我需要在选项卡和面板之间有一个自定义 div,但我设法找到了解决方法。不过干杯。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-14
    • 1970-01-01
    相关资源
    最近更新 更多