сделать первую вкладку активной с помощью jscrollpane - PullRequest
0 голосов
/ 16 ноября 2010

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

$ (функция () { // Создаем «вкладки» $ (». Вкладки). Каждый ( Функция () {

  var currentTab, ul = $(this);
  $(this).find('a').each(
   function(i)
   {
    var a = $(this).bind(
     'click',
     function()
     {
      $("ul.tabs li:first").addClass('active').show();
      if (currentTab) {
       ul.find('a.active').removeClass('active');

       $(currentTab).hide();
      }
      currentTab = $(this).addClass('active')
          .attr('href');
      $(currentTab).show().jScrollPane();
      return false;
     }
    );
    $(a.attr('href')).hide();

   }

  );
 }
);

});

Ответы [ 2 ]

2 голосов
/ 02 марта 2011
$('.tabs').each(
    function()
    {
        var currentTab, ul = $(this);
        $(this).find('a').each(
            function(i)
            {
                var a = $(this).bind(
                    'click',
                    function()
                    {
                        if (currentTab) {
                            ul.find('a.active').removeClass('active');
                            $(currentTab).hide();
                        }

                        currentTab = $(this).addClass('active')
                                        .attr('href');
                        $(currentTab).show().jScrollPane({
                                        showArrows: true,
                                        verticalGutter: 10,
                                        animateScroll: true,
                                        verticalDragMinHeight: 34,
                                        verticalDragMaxHeight: 34
                        });
                        return false;
                    }
                );
                $(a.attr('href')).hide();
            }
        );
    }
).find('a:first').trigger('click');

Использование ('a:first') вместо .first() сработало для меня.

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

Вы можете просто нажать на первую найденную ссылку. например,

$('.tabs').each(
    function()
    {
        var currentTab, ul = $(this);
        $(this).find('a').each(
            function(i)
            {
                var a = $(this).bind(
                    'click',
                    function()
                    {
                        if (currentTab) {
                            ul.find('a.active').removeClass('active');
                            $(currentTab).hide();
                        }
                        currentTab = $(this).addClass('active')
                                        .attr('href');
                        $(currentTab).show().jScrollPane();
                        return false;
                    }
                );
                $(a.attr('href')).hide();
            }
        );
    }
).first().find('a').trigger('click');

(обратите внимание на изменения в последней строке)

...