2012-10-20 17 views
-1

我最近嘗試爲一個div做切換和關閉,但是採用了許多方法,我是不是能夠做到這一點,由於直到去.COM鏈接/#切換亮起,但不脫

我發現了一個帖子,使它發生沒有重定向到#

<script type="text/javascript"> 

    function toggleVisibility(newSection) { 
     $("#info").not("#" + newSection).hide(); 
     $("#" + newSection).show(); 
    } 
</script> 

我仍然在學習JavaScript,我不知道如何添加切換關閉。 現在它只是切換,當我按它它不​​會切換。

請幫忙。

回答

1

基於元素的當前顯示可見性,切換既顯示又隱藏。所以像這樣的東西應該工作:

function toggleVisibility(newSection) { 
    $("#" + newSection).toggle(); 
} 
+0

您是現場保護程序。謝謝! –

0

聽起來像你可能想標籤:當一個面板被選中時,其他面板消失。

這裏有一個共同的方式來做到這一點:

$('a.tab').click(function(e) { 
    e.preventDefault(); 
    $('.panel:visible').hide(); 
    var el = $($(this).attr('href')); 
    el.toggle(); 
}); 

你有展示一組特定面板鏈接和隱藏其他:

<style type="text/css"> 
    .panel {display: none;} 
</style> 

<a class="tab" href="#panel1">Show/hide panel 1</a> 
<a class="tab" href="#panel2">Show/hide panel 2</a> 
<a class="tab" href="#panel3">Show/hide panel 3</a> 

<div class="panel" id="panel1">1</div> 
<div class="panel" id="panel2">2</div> 
<div class="panel" id="panel3">3</div> 
+0

THANKYOU這麼棒! –

0

什麼你給的代碼確實是隱藏ID爲info且沒有newSection中給出的ID的所有元素,然後顯示newSection之一。

因爲元素只能有一個ID,所以將元素看作可能有多個元素,或者可能有多個相同元素,這種處理方式有點怪異和毫無意義。

你可以只使用.toggle()方法:$("#"+newSection).toggle()

+0

你是一位活生生的太謝謝了! –