2013-03-13 45 views
3
$(document).ready(function() { 
    $('#arrow').click(function() { 
     if ($('#slide1').is(":hidden")) { 
      $('#slide1').slideDown('medium'); 
     } else { 
      $('#slide1').slideUp('normal'); 
     } 
    }); 
}); 

我該如何提到單獨的滑動高度?Jquery SlideUp高度

+0

你可能想看看'animate',而不是'效果基本show/slideDown' http://api.jquery.com/animate/ – mattytommo 2013-03-13 09:18:13

+0

我試圖與動畫(),但我沒有得到我需要的水果。 – 2013-03-13 09:23:38

回答

3
$('#arrow').click(function() { 
     if ($('#slide1').hasClass("small")) { 
     $('#slide1').animate({"height": "40px"}, "medium").removeClass("small"); 
     } else { 

      $('#slide1').animate({"height": "20px"}, "medium").addClass("small"); 
     } 
    }); 

可以使用animate方法來改變height。和hasClass方法來檢查div的條件(是否在原始大小)。在這裏,我添加了一個「小」類來表示高度降低狀態。

click here for the jsfiddle

+0

仍然面臨同樣的錯誤。你滑了我,但它並沒有滑下來。我的要求是,onclick它必須執行兩件事:SlideIp/down,更改圖像。下面是我正在使用的代碼:$(document).ready(function(){('#arrow')。click(function(){if($#slide1')。hasClass(「 ('#slide1')。animate({「height」:「100px」},「medium」)。removeClass(「small」); } else { $('#slide1' ).animate({「height」:「60px」},「medium」)。addClass(「small」); } }); }); – 2013-03-13 09:57:24

+0

並更改圖像:var newsrc =「newdown.jpg」; function changeImage(){ if(newsrc ==「newdown.jpg」){ document.images [「arrow」]。src =「newdown.jpg」; newsrc =「newup.jpg」; } else { document.images [「arrow」]。src =「newup.jpg」; newsrc =「newdown.jpg」; } } – 2013-03-13 09:58:57

+0

我已更新答案,http://jsfiddle.net/arjuncc/xapCR/7/ – arjuncc 2013-03-13 10:02:44

0

使用animate()

$(document).ready(function() { 
    $('#arrow').click(function() { 
     if ($('#slide1').is(":hidden")) { 
     $('#slide1').animate({"height": "100px"}, "medium"); 
     } else { 
     $('#slide1').animate({"height": "0px"}, "medium");; 
     } 
    }); 
}); 

,看一下toggle()(雖然過時,在JQ 1.9移除),fadeToggle()

+0

感謝您的回覆。它實際上滑動與指定的高度,但當我點擊相同的箭頭按鈕,它不會滑落..請幫助。 – 2013-03-13 09:33:44