按钮点击取消正在进行的javascript简介

时间:2013-10-10 09:24:40

标签: javascript jquery

我在一个单页网站上工作,在显示主要内容之前我使用了一个介绍。 引言(大约十秒钟)立即触发并以此代码结束:

// Fade in divs for intro

$('.intro-logo').fadeIn(800).delay(800, function() {
    $('.groupC').delay(400).fadeOut(800, function() {
        $('.main-holder').fadeIn(800);
        hash_handler();
        $('.footershow').delay(1600).fadeIn(800);
    });
});

在此事件期间,会触发hash_handler,它会根据网址中的#来滚动主页面,以显示网页的正确部分。

在介绍过程中会显示一个SKIP按钮,按下此代码后按下:

function hideIntro() {
    $('.groupC').fadeOut(800);
    $('.main-holder').fadeIn(800);
    hash_handler();
    $('.footershow').delay(1600).fadeIn(800);
}

请在按下SKIP按钮时建议如何取消介绍,以避免hash_handler被执行两次。

谢谢,

1 个答案:

答案 0 :(得分:0)

我希望你使用的是jQuery。如果正确,您可以使用.stop( [clearQueue ] [, jumpToEnd ] ) method,如下所示:

$('.groupC').stop(true, false).fadeOut(800);

第一个参数确定jQuery是否取消对象的任何待定动画,而第二个参数确定jQuery是否跳转到当前动画的结尾或将其保留在原始动画的位置。