2013-06-12 24 views
-1

好吧,所以我有一些jQuery代碼,我正在使用它來獲取製表符。將「活動」類添加到切換本身jQuery

現在,這是我的問題,我想切換它自己有一個"active"類添加到它,當有人點擊切換。我不想要內容中的活躍課程,而是需要切換。

這裏是我的jQuery代碼

function toggleMeMirror(a){ 

// hide all 

jQuery('.episodemirrors').hide(); 

// show one 

var e=document.getElementById(a); 

if(!e) return true; 

    if(e.style.display=="none"){ 

     e.style.display="inline" 

    } else { 

     e.style.display="none" 

    } 

return true; 

} 

這裏是撥動我的HTML代碼..不是內容。

<div id="post-<?php the_ID(); ?>" onclick="return toggleMeMirror('post-<?php the_ID(); ?>')" >Toggle</div> 

這就是我想要的活動類,從而可能使課堂active當有人點擊就可以了,所以我可以不同的樣式。

這是我的HTML爲我的內容

<div id="post-<?php the_ID(); ?>" class="episodemirrors"> Content </div>

+0

爲什麼你'div'有返回值? –

+0

元素有一個類,但你試圖getElementById? – adeneo

+0

@adeneo - 在我看來,'div'在參數中有'id',這是一個不同的元素。因此,他隱藏了所有具有該id的元素,並在參數中顯示該元素。但是,這看起來像是「我希望你能爲我做這件事,這是我想要的:......」類型的問題。 –

回答

0

您使用jQuery和你有一個獨特的toggler ID。所以,你可以做到這一點你現有的函數內部:雖然

$('.post-[id]').addClass('active'); 

一些建議:由於您的toggler類具有唯一的ID

  1. ,您可能希望讓他們使用的ID,而不是類。

  2. 而不是做e.style.display,你可以使用jQuery的toggleClass跟蹤爲你添加和刪除一個類。你首先隱藏所有的類,只要你觸發該函數,所以你可以打開該div的顯示。

  3. 既然你使用jQuery,你也可以用它來觸發點擊。

根據你的代碼一個簡單的例子:

<div class="trigger" id="[id]">Toggle</div> 

$('.trigger').click(function(){ 
    $('.episodemirrors').hide(); 
    var id = $(this).attr('id'); 
    $('#post-'+id).css('display', 'inline'); 
}); 
+0

請注意,當我寫評論時,您使用了一個獨特的類而不是觸發器上的ID。從那以後,我發現你已經改變了你的榜樣。這是一個很好的努力,但是現在,你對trigger和content div都有相同的id,這是行不通的。 –

+0

我現在使用'id'作爲div。我只需要現在添加的「主動」類。 你能告訴我我可以在那裏添加代碼到我目前的jQuery中嗎?我是jQuery的完整noob:( – Maaz

+0

)我應該如何更改我的jQuery?對不起,我對jQuery瞭解不多,你可以在頂部看到我當前的jQuery代碼,因爲你已經建議有id而不是類。然後,只要有人點擊觸發器,我就需要一個class =「active」 – Maaz

0

我認爲,最簡單的方法就是讓這種方式:

HTML:

<div class="spoiler"> 
    <div class="toggle">Toggle</div> 
    <div class="content">Content</div> 
</div> 

CSS:

.spoiler .content { 
    display: none; 
} 

JS:

$(".spoiler .toggle").click(function(){ 
    $(".spoiler .toggle.active").removeClass("active").next().hide(); 
    $(this).toggleClass("active"); 
    $(this).next().toggle(); 
}) 
+0

有多個選項卡和多個內容當單擊一個選項卡時,其餘部分必須隱藏 – Maaz

+0

已添加一些代碼,所以現在你所有的所有活動切換都會消失,並使活動切換出現 –

+0

在切換開關上方找到內容下面是目前工作方式的鏈接:http://phanime.com/43902/dansai-bunri- no-crime-edge-online-episode-11/ – Maaz