2010-07-08 2 views
0

У меня есть две отдельные функции jQuery, которые позволяют пользователю переключать видимость div. По defualt, divs будут в закрытом состоянии. Я пытаюсь выяснить способ настройки ссылок на эту страницу, которые откроют конкретный div на основе идентификатора, переданного в строку запроса. Мой JQuery выглядит следующим образом:jQuery для запуска события через строку запроса

jQuery(document).ready(function(){ 

    //make first div always open 

    jQuery(".toggle_container:not(:first)").hide(); 
    jQuery(".toggle_container:first").show(); 
    jQuery("h6.trigger:first").addClass("active"); 

    jQuery("h6.trigger").click(function(){ 
     jQuery(this).toggleClass("active"); 
     jQuery(this).next(".toggle_container").slideToggle(300); 
    }); 

    //The second function 

    jQuery(function(){ 
     jQuery(".toggleIt").click(function(){ 
      jQuery(this).next(".hiddenText").slideToggle("fast"); 
      jQuery(this).html(function(i,html) { 
       if (html.indexOf('+') != -1){ 
        html = html.replace('+','-'); 
       } else { 
        html = html.replace('-','+'); 
       } 
       return html; 
      }) 
     }); 
    }); 

HTML

<h6 class="trigger" id='uniqueID"></h6> 
<div class="toggle_container"> 
TEST 
</div> 

//and the second toggled container 
<p class="toggleThis tips" id="AnotherID">+</p> 
<div class="hiddenText2"> 
Another TEST 
</div> 

Я хотел бы добавить идентификатор в строке запроса URL и он открыть скрытые DIV с тем же ID. У меня он так структурирован до сих пор ...

var category = getParameterByName('cat'); 
var id = getParameterByName('id'); 

if(id) 
{ 

} 
else if(category) 
{ 

} 
else 
{ 
    //moving this in here 
    jQuery(".toggle_container:not(:first)").hide(); 
    jQuery(".toggle_container:first").show(); 
    jQuery("h6.trigger:first").addClass("active"); 
} 

Я застрял на этой части. Какие-нибудь советы?

ответ

0

Вы используете PHP или другой язык для создания HTML? .. Я бы создал скрытое поле, заполненное переменной запроса, и использовал onLoad, чтобы открыть div, если поле было заполнено.

+0

Это действительно нужно передать через строку запроса. – Peachy

+0

Да, я согласен ... Вы передаете его через строку запроса. Язык творения страницы вставляет его как значение в элемент ввода HTML. jQuery выбирает это и действует на него. – Fosco

+0

Возможно, я неправильно понял. Однако мне нужно держать это на переднем конце. Я уверен, что есть способ запустить событие click или использовать хеш + var, чтобы вызвать это. Просто не могу прибить его. Спасибо хоть! – Peachy

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