2015-05-12 5 views
1

В настоящее время this webpage открывается на вкладку «Бесплатно» & Дополнительно ». Я хочу, чтобы он открыл первую вкладку «Содружество & Совет». По-моему, по умолчанию он откроется для первой вкладки. Я попытался найти, где он говорит браузеру, чтобы открыть его на третьей вкладке, но не смог найти его.Как установить закладку по умолчанию для начальной загрузки

ответ

0

Вы должны установить активный к 0 в коде

$(document).ready(function() { 
    $('div#Panels').tabs({ 
    active: 2, 
    collapsible: false, 
    activate: function(event, ui) {... 

UPDATE

При нажатии на вкладку 0, то страница работает этот код :

$('#carousel').flexslider({ 
    animation: "slide", 
    controlNav: false, 
    animationLoop: true, 
    slideshow: false, 
    itemWidth: 80, 
    itemMargin: 5, 
    asNavFor: '#slider' 
}); 

$('#slider').flexslider({ 
    animation: "slide", 
    controlNav: false, 
    animationLoop: true, 
    slideshow: false, 
    sync: "#carousel" 
}); 

//----------------- 
$(window).resize(); 
//----------------- 

Поскольку вы не нажимаете эту вкладку для запуска, этот код не запускается при открытии вкладки. Вам нужно запустить код самостоятельно. Я предлагаю создать функцию и вызвать ее сразу после определения вкладок.

Полный сценарий будет (возможно, что-то неуместно, потому что я не запускать его):

function ClickedTab(carousel, slider){ 
    $(carousel).flexslider({ 
     animation: "slide", 
     controlNav: false, 
     animationLoop: true, 
     slideshow: false, 
     itemWidth: 80, 
     itemMargin: 5, 
     asNavFor: slider 
    }); 

    $(slider).flexslider({ 
     animation: "slide", 
     controlNav: false, 
     animationLoop: true, 
     slideshow: false, 
     sync: carousel 
    }); 

    //----------------- 
    $(window).resize(); 
    //----------------- 
} 

$(document).ready(function() { 
    $('div#Panels').tabs({ 
     active: 0, 
     collapsible: false, 
     activate: function(event, ui) { 
      switch (ui.newPanel.index()) { 
      case 0: 
       ClickedTab("#carousel", "#slider"); break; 
      case 1: 
       ClickedTab("#carousel2","#slider2"); break; 
      } 
     } 
    }); 
    ClickedTab("#carousel", "#slider") 
}) 
+0

Спасибо. Это работает, чтобы открыть с первой вкладкой, но теперь flexslider, содержащийся на этой вкладке, не будет загружаться, если я не выйду из этой вкладки и не вернусь обратно в нее. Знаете ли вы, как это исправить? – expansivelove

+1

Он отлично работает. Спасибо! – expansivelove

1

Я думаю, что это код, который вы ищете:

$('div#Panels').tabs({ 
    active: 2, 

Опция active сообщает вкладок, какая вкладка для отображения.

Если вы изменили значение active на 0 (или вообще удалите его), он должен отобразить первую вкладку на загрузке страницы.


Поскольку activtate события не срабатывают на вкладку изначально отображаются, вы можете переместить код из обработчика activate событий в отдельную функцию, а затем вызвать эту функцию как в обработчике activate событий и когда страницы первые нагрузки.

<script> 
$(document).ready(function() { 
    function activateTab(index) { 
     switch (index) { 
      case 0: 

       $('#carousel').flexslider({ 
        animation: "slide", 
        controlNav: false, 
        animationLoop: true, 
        slideshow: false, 
        itemWidth: 80, 
        itemMargin: 5, 
        asNavFor: '#slider' 
       }); 

       $('#slider').flexslider({ 
        animation: "slide", 
        controlNav: false, 
        animationLoop: true, 
        slideshow: false, 
        sync: "#carousel" 
       }); 

       //----------------- 
       $(window).resize(); 
       //----------------- 

       break; 

      case 1: 

       $('#carousel2').flexslider({ 
        animation: "slide", 
        controlNav: false, 
        animationLoop: true, 
        slideshow: false, 
        itemWidth: 80, 
        itemMargin: 5, 
        asNavFor: '#slider2' 
       }); 

       $('#slider2').flexslider({ 
        animation: "slide", 
        controlNav: false, 
        animationLoop: true, 
        slideshow: false, 
        sync: "#carousel2" 
       }); 

       //----------------- 
       $(window).resize(); 
       //----------------- 

      break; 
      } 
    } 

    $('div#Panels').tabs({ 
     active: 0, 
     collapsible: false, 
     activate: function(event, ui) { 
      activateTab(ui.newPanel.index()); 
     } 
    }); 

    activateTab(0); 
}); 
</script> 
+0

Спасибо. Это работает, чтобы открыть с первой вкладкой, но теперь flexslider, содержащийся на этой вкладке, не будет загружаться, если я не выйду из этой вкладки и не вернусь обратно в нее. Знаете ли вы, как это исправить? – expansivelove

+0

@expansivelove - Стыдно, что он не выполняет этот код автоматически, но он может быть исправлен. Я добавил к своему ответу. –

+0

Спасибо за это. Сценарий отлично работает для вкладки 0, но второй flexslider, на вкладке 1, не загружается при нажатии на вкладку. Низам, который также ответил на этот вопрос, создал функцию ClickedTab для вызова после определения вкладок и, похоже, работает отлично. – expansivelove

Смежные вопросы