我有一个高度为40px的div;我想用jQuery从这个高度做一个scrollDown到600px。
我该怎么做?
答案 0 :(得分:5)
您正在寻找animate
而非scrollDown
(或slideDown
,我怀疑这是您的意思)。 E.g:
$("selector_for_the_div").animate({
height: 600
});
更新:在对另一个答案的评论中说:
嗯,我想我不能使用animate
!因为我需要链接到这个div的每个元素(比如一些具有绝对位置的div)用#myDiv 滚动
如果你的元素与div对齐的方式是当div变得更高时它们不会自然地移动(例如,你已经使用过position: absolute
或类似的东西),你可以动画他们同时拥有top
(或bottom
)财产。我会看看是否有可能以不同的方式将它们与div联系起来,但如果你不能,那将是你唯一的选择。它看起来像这样:
jQuery(function($) {
var theDiv = $("#theDiv"),
absDiv = $("#absDiv"),
coords = theDiv.offset(),
origHeight = theDiv.height();
absDiv.css({
position: "absolute",
left: coords.left + "px",
top: (coords.top + origHeight) + "px"
});
$("#theButton").click(function() {
var height = theDiv.height();
if (height < 600) {
theDiv.animate({
height: 600
});
absDiv.animate({
top: coords.top + 600
});
}
});
});
答案 1 :(得分:1)