2015-04-17 3 views
0

У меня есть этот скрипт, который показывает/скрывает div. Может ли кто-нибудь объяснить, как я могу заставить его показывать только одного дивара за раз?показать один div и скрыть остальные, используя javascript

<script> 
function Show_Div(Div_id) { 
if (false == $(Div_id).is(':visible')) { 
    $(Div_id).show(); 
} 
else { 
    $(Div_id).hide(); 
} 
} 
</script> 

и связь ...

onClick="Show_Div(Div_1) 

Спасибо!

+0

Смотрите это: http://stackoverflow.com/questions/8655741/javascript-hide-all-other-divs –

+0

, если вы уже используете JQuery, почему не '$ . ("ДИВ") скрыть(); $ ("# MyDiv"). Шоу() '? – Huey

+0

Спасибо «Гость» использовал информацию в вашей ссылке и решил мою проблему:) Спасибо всем, кто за вас тоже помогает! – dave

ответ

1

Попробуйте использовать этот

$(document).ready(function(){ 
    $('.parent div').hide(); // hide div's on load using parent class as a starting point  
    $('#nav a').click(function() { // on the anchor clicks that are inside div with id=nav 
     var $div = $('.parent div').eq($(this).index('#nav a')); // get the relevant div 
     $div.show(); // show the relevant div 
     $('.parent div').not($div).hide(); // hide all but the relevant div 
    });​ 
}): 
+0

Спасибо ВМС, я использовал ссылку выше в конце, но ценю вашу помощь! – dave

-1

, если я правильно понимаю ваш вопрос, может быть, вы можете попробовать этот способ:

<script> 
function Show_Div(Div_id) { 
    if (false == $(Div_id).is(':visible')) { 
     $(this).show(); 
    } 
    else { 
     $(this).hide(); 
    } 
} 
</script> 

, если ваше использование this в

$(this).show(); 

только один переключится на ваш клик ~ , но так:

$(Div_id).show(); 

вы получите массив цели, потому что селектор Jquery выберет массив цели.

надеюсь, что это поможет вам ~

+0

Спасибо Qianjiahao, я использовал ссылку выше в конце, но также ценю вашу помощь! – dave

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