不,這不是一個簡單直接的切換問題。我知道toggle()函數以及如何簡單地隱藏/顯示div。想象一下,一個盒子內的標籤:jQuery - 點擊切換div類
<div class="section hidden">
<div class="section-legend">My Section</div>
</div>
當你點擊整個DIV的任何地方,它應該刪除hidden
類。該框然後看起來擴大。現在該框不屬於hidden
類,它不應該是可點擊的。
相反,當您單擊div.section-legend
時,它應該再次將類hidden
添加到主div。很顯然,圖例的點擊事件需要停止傳播()。現在,傳說不能再點擊了,你必須再次點擊整個div才能打開它。
我不能得到任何正常工作,而且我知道這是愚蠢的代碼:
$(document).ready(function() {
$('.section.hidden').click(function() {
$(this).removeClass('hidden');
$(this).find('.section-legend').click(function(e) {
$(this).parent().addClass('hidden');
e.stopPropagation();
});
});
$('.section-legend').click(function(e) {
$(this).parent().addClass('hidden');
e.stopPropagation();
$(this).parent().click(function() {
$(this).removeClass('hidden');
});
});
});
人越來越慵懶總是想一個jsfiddle .. – Ben
是一個div.hidden仍然可見不知何故?我不知道它是如何意味着如果它真的「隱藏」 – Ben
這不是真隱,'hidden'是類塌陷部分的只是名字是寂靜的點擊。還有一些其他代碼意味着它更有意義,但在這裏我可以看到它看起來很混亂。 – BadHorsie