2014-01-27 4 views
1

навигации

<ul id="accordion"> 
    <li> 
    <a class="open_link" href="#">1</a> 
    <ul class="sub_accardion "> 
     <li> 
     <a class="sub_link" href="#">1.1</a> 
     <ul> 
      <li><a href="#">1.1.1</a></li>  
      <li><a href="#">1.1.1</a></li>  
      <li><a href="#">1.1.1</a></li>  
     </ul> 
     </li> 
     <li> 
     <a class="sub_link" href="#">1.2</a> 
     <ul> 
      <li><a href="#">1.2.1</a></li>  
      <li><a href="#">1.2.1</a></li>  
      <li><a href="#">1.2.1</a></li>  
     </ul> 
     </li> 
    </ul> 
    </li> 
</ul> 


JQuery аккордеона активное состояние


JQuery

<script type="text/javascript" > 
$(function() { 
    $("#accordion").accordion({ 
     header: '.open_link',  
     active: "false", 
     heightStyle: "content",  
     collapsible: true, 
    }); 
    $(".sub_accardion").accordion({ 
     active:'false', 
     header: '.sub_link',  
     heightStyle: "content",  
     collapsible: true, 
    });  
}); 
</script> 



Вопрос

Как добавить класс для активного использования на любой панели? Я пробовал active:'.active', но он не работает.

+0

как http://jsfiddle.net/arunpjohny/UjT4p/1/ –

+0

я получил много страниц, установить новые JS каждый раз, когда плохо dessigion для меня , Мне нужно установить класс в html или id. – user3241193

ответ

1

Это неправильная разметка для jQuery UI Accordion.

по их documentation:

Основной HTML разметка ряд заголовков (H3 теги) и дивы контента, так что содержание может использоваться без JavaScript.

Поскольку вы используете UL тегов, я думаю, что вы ищете является jQuery UI Menu.

Вот что я хотел бы сделать с вашим кодом:


HTML

<ul id="menu"> 
    <li> 
     <a class="open_link" href="#">1</a> 
     <ul> 
      <li> 
       <a class="sub_link" href="#">1.1</a> 
       <ul> 
        <li><a href="#">1.1.1</a></li> 
        <li><a href="#">1.1.1</a></li> 
        <li><a href="#">1.1.1</a></li> 
       </ul> 
      </li> 
      <li> 
       <a class="sub_link" href="#">1.2</a> 
       <ul> 
        <li><a href="#">1.2.1</a></li> 
        <li><a href="#">1.2.1</a></li> 
        <li><a href="#">1.2.1</a></li> 
       </ul> 
      </li> 
     </ul> 
    </li> 
</ul> 

Jquery

$("#menu").menu(); 

CSS

.ui-menu { width: 100px; } 

See working jsFiddle demo

+0

$ (".selector") .accordion ({active: 2}); Дозаторная работа для меня мне нужен класс или идентификатор. Можете ли вы показать мне весь код js? Я просто не могу понять, где установить новый активный класс. – user3241193

+0

Что именно вы пытаетесь сделать? Вы пытаетесь открыть определенные панели по умолчанию? Включая внутреннюю панель? –

+0

Например, я получил 10 разных страниц. В каждом из них я получил приглашение на другую панель в меню. Как я могу установить активный класс для панели и не менять скрипт в начале файла каждый раз. Пойди за мой плохой английский. – user3241193

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