我試着讓我的jQuery擴大的任何地方點擊時(除了左上框),並嘗試只在(左上框),當點擊崩潰jquery展開/摺疊?
HTML:
<div id="box">
<div class="collapsed container" >
<div class="nav" class="closed">0</div>
box 1 - click me
<div class="expanded_content">
extra content only for expanded state
</div>
<div class="collapsed_content">
collapsed only content #1
</div>
</div>
<div class="collapsed container">
<div class="nav" class="closed">0</div>
box 2 - click me
<div class="expanded_content">
extra content only for expanded state
</div>
</div>
<div class="collapsed container">
<div class="nav" class="closed">0</div>
box 3 - click me
<div class="expanded_content">
extra content only for expanded state
</div>
</div>
</div>
的JavaScript:
$("#box").delegate(".container", "click", function(e) {
$(this).addClass("expanded");
});
$("#box").delegate(".container.expanded .nav ", "click", function(e) {
$(this).addClass("collapsed");
});
似乎是幾乎沒有,但不大,這將是這樣做的正確方法?由於切換似乎不是這裏的選項。
是否使用.delegate(),因爲該元素是不是在頁面上開始?此外,自從jQuery 1.7開始,.delegate()已被棄用,以支持.on()。 – j08691 2012-03-08 20:25:47
@ j08691 - '委託()'不被棄用,'活着'是。 – ShankarSangoli 2012-03-08 20:26:31
@ShankarSangoli - 真的嗎?請先閱讀[docs](http://api.jquery.com/delegate/):「從jQuery 1.7開始,.delegate()已被.on()方法取代。」 – j08691 2012-03-08 20:29:26