0

我无法让较新版本的jscrollpane与 jQuery UI 选项卡一起使用。我只有一个标签(第一个)工作,但没有其他;我尝试用以前的版本解释这里的修复,放置<div>由选项卡控制的额外内容(内部是由 jScrollPane 控制的 div),如此所述,但仍然没有运气。有没有人遇到过类似的问题?感谢提供线索!

4

3 回答 3

1

我自己终于或多或少地找到了解决方案,当然,通过查看jscrollpane 作者自己关于这个问题的解释,但对于 jscrollpane 的早期版本。

由于这不是开箱即用的,而且我在实施解决方案时仍然遇到问题,我向选项卡链接添加了一个单击侦听器,并在单击时将 jscrollpane 添加到内容 div,如下所示

jQuery("#tabs ul li a").click(function () {
clickednum = "#tabs-" + jQuery(this).parent().attr("id");
jQuery(clickednum + " .skroler").jScrollPane();
    });

我在这里做的是等待用户单击某个选项卡链接,然后将 jScrollPane 添加到对应于单击的选项卡链接的选项卡内容。

.skroler是一个额外的 div,其中是选项卡内容,因为脚本作者描述它必须以这种方式完成才能工作)

我正在通过li id 属性来识别标签(我需要从 PHP 生成。出于其他原因)

这是特定的实现 - 从工作示例来看,可能它可以在其他环境中更简单地完成。

啊,当然,在故事开始时,您需要将 jScrollPane 初始化为第一个打开的选项卡,例如

jQuery("#tabs-1 .skroler").jScrollPane();
于 2012-05-16T21:50:11.037 回答
0

我有同样的问题,并通过将 id 添加到与生成的选项卡对应的 li 标记来解决它:

<ul>
      <li id="details"><a href="#tabs-1">Details</a></li>
      <li id="history"><a href="#tabs-2">History</a></li>
      <li id="examinations"><a href="#tabs-3">Examinations</a></li>
      <li id="diagnosis"><a href="#tabs-4">Diagnosis</a></li>
</ul>

然后,例如:

$('#diagnosis').click(function() {  
    $('.diagnosis').jScrollPane();
});
于 2013-07-29T06:16:21.353 回答
0

刚刚遇到同样的问题

$( "#tabs" ).tabs({
    //for the initially loaded tab
    create: function( event, ui ) {
        $(ui.panel).jScrollPane();
    },
    //for the tabs opened later
    activate: function( event, ui ) {
        $(ui.newPanel).jScrollPane();
    },
});

更多信息在这里http://api.jqueryui.com/tabs/

于 2014-07-21T12:43:49.050 回答