jQuery/Javascript - 延迟一个函数的执行,直到另一个函数完成

jQuery/Javascript - Delay the execution of a function until another one is complete

本文关键字:函数 执行 另一个 一个 Javascript 延迟 jQuery      更新时间:2023-09-26

我正在尝试将 php 页面加载到元素中,然后将滑块应用于加载的内容。
问题是在执行函数并且滑块已经开始工作后,内容需要几秒钟才能加载。
我试图以某种方式延迟滑块函数的执行,直到 php 嵌入函数完成。

这是我的代码:

$(document).ready(function () {
    ajaxpage("products.php?type=featured&order=salesNumber", "featuredArea");
});
$(document).ready(setTimeout(function () {
    $(".productsArea").easySliderProducts({
        nextText: "Next",
        prevText: "Previous"
    });
    document.getElementById("outputHere").innerHTML = $(".page ul#featuredArea li").length;
    $(".page").easySlider({
        s: $(".page ul#featuredArea li").length,
        auto: true,
        continuous: false,
        nextId: "featNextArrow",
        nextText: "",
        prevId: "featPrevArrow",
        prevText: "",
        pause: 7500
    });
}, 1000));

我将两者分开以使用 setTimeout 函数。
它对我有用,但结果可能对其他人不同。
我想知道是否可以等到 ajaxpage 函数完成页面加载,然后继续代码?

Ajax页面代码: http://pastebin.com/XWa0jD77
简易滑块1.7代码:http://pastebin.com/CzK8BzfL

我想过从嵌入页面中调用滑块,尽管这不起作用。

由于你已经在使用 jquery,我建议你扔掉你的 ajaxpage 函数并使用 $jQuery.load();

正如你在jquery文档中看到的,load()带有一个回调函数,它完全可以满足你的需要。