jQuery - 等到 SlideUp() 结束

发布于 2024-07-25 17:47:25 字数 1615 浏览 9 评论 0原文

我怎样才能等到 jQuery 函数 slipUp() 结束后再继续执行脚本?

<script type="text/javascript">
$(document).ready(function() {
    $("div[class=item]").click(function() {
        var id = $(this).attr("id");
        $("#content").slideUp();
        switch(id) {
            // Applications
            case "rampro":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/rampro.html");
                $("#content").slideDown();
                break
            case "diskman":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/diskman.html");
                break
            case "iconmap":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/iconmap.html");
                break
            // Websites
            case "benoks":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/benoks.html");
                break
            case "linkbase":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/linkbase.html");
                break
            case "jamesbrooks":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/jamesbrooks.html");
                break
            default:
                $("#content").css("text-align","center");
                $("#content").html("<h1>something went wrong, try again!</h1>");
        }
        return false;
    });
});

How can I wait till the end of the jQuery function slideUp() before continuing the script?

<script type="text/javascript">
$(document).ready(function() {
    $("div[class=item]").click(function() {
        var id = $(this).attr("id");
        $("#content").slideUp();
        switch(id) {
            // Applications
            case "rampro":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/rampro.html");
                $("#content").slideDown();
                break
            case "diskman":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/diskman.html");
                break
            case "iconmap":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/iconmap.html");
                break
            // Websites
            case "benoks":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/benoks.html");
                break
            case "linkbase":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/linkbase.html");
                break
            case "jamesbrooks":
                $("#content").css("text-align", "left");
                $("#content").load("inc/pages/jamesbrooks.html");
                break
            default:
                $("#content").css("text-align","center");
                $("#content").html("<h1>something went wrong, try again!</h1>");
        }
        return false;
    });
});

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

执手闯天涯 2024-08-01 17:47:25

使用回调机制并让您的代码在回调中运行。

$('#something').slideUp('fast', function() {
   ... stuff to do after the slide is complete...
});

Use the callback mechanism and have your code run in the callback.

$('#something').slideUp('fast', function() {
   ... stuff to do after the slide is complete...
});
£冰雨忧蓝° 2024-08-01 17:47:25

SlideUp() 有两个参数。 如果您传递一个函数作为第二个参数,它将在动画完成时被调用。

http://docs.jquery.com/Effects/slideUp

slideUp() takes two arguments. If you pass a function as the second argument, it'll be called when the animation is complete.

http://docs.jquery.com/Effects/slideUp

初见终念 2024-08-01 17:47:25

在异步函数中:

await (new Promise(x=>$('#something').slideUp('fast',x)));

确保您处于异步上下文中,否则“await”将引发错误。

In an async function:

await (new Promise(x=>$('#something').slideUp('fast',x)));

Ensure you are in an async context, otherwise “await” will raise an error.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文