Пример jScrollPane и Tabs, почти работающие вместе - PullRequest
0 голосов
/ 25 ноября 2010

Мне бы хотелось, чтобы полоса прокрутки (из jScrollPane) отображалась на каждой вкладке (из Soh Tanaka). В настоящее время он отображается для первой вкладки, но возвращается к настройкам браузера по умолчанию для второй, третьей и четвертой вкладок…

Смотрите мой живой пример здесь: jScrollPane и Tabs, почти работающие вместе

Как получить полосу прокрутки для отображения на каждой вкладке? Спасибо!

<script type="text/javascript">
    jQuery.noConflict();
    jQuery(document).ready(function($) {
    jQuery('.scroll-pane').jScrollPane({
                verticalDragMinHeight: 20,
                verticalDragMaxHeight: 20,
                horizontalDragMinWidth: 20,
                horizontalDragMaxWidth: 20
    });

});

<script type="text/javascript">
$(document).ready(function() {

//When page loads...
$(".tab_content").hide(); //Hide all content
$("ul.tabs li:first").addClass("active").show(); //Activate first tab
$(".tab_content:first").show(); //Show first tab content

//On Click Event
$("ul.tabs li").click(function() {

    $("ul.tabs li").removeClass("active"); //Remove any "active" class
    $(this).addClass("active"); //Add "active" class to selected tab
    $(".tab_content").hide(); //Hide all tab content

    var activeTab = $(this).find("a").attr("href"); //Find the href attribute value to identify the active tab + content
    $(activeTab).fadeIn(); //Fade in the active ID content
    return false;
});
*} * 1014);

1 Ответ

0 голосов
/ 26 ноября 2010

Вам необходимо повторно инициализировать jScrollPane после того, как вы показали каждую вкладку. Простой пример здесь:

http://jscrollpane.kelvinluck.com/invisibles.html

В вашем случае вы можете попробовать:

$("ul.tabs li").click(function() {

    $("ul.tabs li").removeClass("active"); //Remove any "active" class
    $(this).addClass("active"); //Add "active" class to selected tab
    $(".tab_content").hide(); //Hide all tab content

    var activeTab = $(this).find("a").attr("href"); //Find the href attribute value to identify the active tab + content
    $(activeTab).fadeIn().jScrollPane(); //Fade in the active ID content and apply jScrollPane
    return false;
});

(я как-то отправил этот ответ на неправильный вопрос вчера - извините за задержку с ответом!)

...