我在寫一些jQuery代碼來切換Div可見性。我遵循這裏發佈的方法:http://jsfiddle.net/Ga7Jv/。使用JQuery切換div可見性
當用戶點擊圖片(H2標籤旁邊)時,我希望它切換div。
這裏是Jquery的:
$(function()
{
$(".expander").live('click', function(){
$(this).next("#TableData").slideDown();
$(this).removeClass('expander');
$(this).addClass('expanded');
});
$(".expanded").live('click', function(){
$(this).next("#TableData").slideUp();
$(this).removeClass('expanded');
$(this).addClass('expander');
});
下面是HTML:
<h3><img src="toggle.png" class ="expander" alt="Expand"/>
Tabular Data</h3>
<div id="TableData">
//Content
</div>
的是應用於類擴展的CSS,當我點擊它看來,CSS改變按鈕,我會期待的。所以我假設代碼找到了切換按鈕並切換了類。
但它不執行我需要的操作,即根據該類上下滑動div。
另一種方式我試圖做到這一點是這樣的:
$(function(){
$('.expander').live('click',function(){
$('#TableData').show();
$('#TableData').hide();
});
這僅關閉DIV,當我點擊它不會再次打開。我也有它,所以它關閉很好,但是當我打開它時,它會立即關閉。
感謝
**邊注:** *在jQuery 1.7的,所述.live()方法被棄用。使用.on()附加事件處理程序。老版本的jQuery用戶應該優先使用.delegate(),而不是.live()。* – DaniP
感謝所有的答案,我最終使用了Satpal來避免改變類,如果我不需要。 – Hulaz