好的,这个人有我。我正在尝试让我的页面在元素上运行一系列连续动画,当它完成时,然后滚动到名为START的div。我有动画位下来,但整个自动滚动的东西让我击败。不管我偷了什么代码并试过,它都没用。
任何人都指出我正确的方向?这是我在底部尝试的代码:
$(function () {
$("a.engine").click(function () {
$("div.intro_image").removeClass("intro_effects");
$("body").animate(500).css({
"overflow": "auto"
});
$("div.menu_container").delay(600).animate(500).removeClass("hide");
$('a.engine').contents().unwrap();
});
function scrollToAnchor(aid) {
var aTag = $("a[name='" + aid + "']");
$('html,body').animate({
scrollTop: aTag.offset().top
}, 'slow');
}
$("a.engine").click(function () {
scrollToAnchor('start');
});
});
答案 0 :(得分:0)
尝试使用setTimeout
$(function () {
$("a.engine").click(function () {
$("div.intro_image").removeClass("intro_effects");
$("body").animate(500).css({
"overflow": "auto"
});
$("div.menu_container").delay(600).animate(500).removeClass("hide");
$('a.engine').contents().unwrap();
setTimeout(function(){
scrollToAnchor('start');
},1100);
});
function scrollToAnchor(aid) {
var aTag = $("a[name='" + aid + "']");
$('html,body').animate({
scrollTop: aTag.offset().top
}, 'slow');
}
});
并在调试器中检查aTag.offset()。top的值。