我有一部分jQuery似乎没有正常工作。我有一个链接点击,[显示/隐藏]应该slideToggle一个div。同时,我想设置它的动画,以便页面滚动到div的顶部。当我将animate
函数放在slideToggle
函数中时,它会起作用,例如in this jfiddle。
然而,这意味着我想要滑出的div,然后然后页面向下滚动。我喜欢设置它以便两者同时发生,我试图在this jfiddle中进行,但它根本不起作用。我也尝试先做滚动动画,然后是slideToggle,它没有用 - 有没有办法实现这个?干杯!
答案 0 :(得分:5)
$(document).ready(function () {
$('.click_to_hide').click(function () {
var visible = $('.hide_on_click').is(":visible");
$('.hide_on_click').slideToggle(500);
if (!visible) {
$('html, body').animate({
scrollTop: $('.hide_on_click').offset().top
}, 500);
}
});
});
答案 1 :(得分:1)
$(document).ready(function () {
$('.click_to_hide').click(function () {
$('.hide_on_click').slideToggle(500);
if($('.hide_on_click').is(':visible')){
$('html, body').animate({
scrollTop: $('.hide_on_click').offset().top
}, 500);
}
});
});
尝试将其置于同一个功能