Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 设置超时后运行jquery函数_Javascript_Jquery - Fatal编程技术网

Javascript 设置超时后运行jquery函数

Javascript 设置超时后运行jquery函数,javascript,jquery,Javascript,Jquery,我有一个运行良好的动画,但现在我正试图通过淡出文本,然后运行另一个函数来反转此动画。 加载此页面后,将运行以下命令 $(document).ready(function () { dream(); setTimeout(runul(), 8000, function() {showVideo()}); }); dream功能在身体背景上创建气泡 function dream() { //calculating random color o

我有一个运行良好的动画,但现在我正试图通过淡出文本,然后运行另一个函数来反转此动画。 加载此页面后,将运行以下命令

 $(document).ready(function () {

      dream();
      setTimeout(runul(), 8000, function() {showVideo()});

    });
dream功能在身体背景上创建气泡

 function dream() {
        //calculating random color of dream
        if (animation_stopped) return;
        var color = 'rgb(' + Math.floor(Math.random() * 255) + ',' + Math.floor(Math.random() * 255) + ',' + Math.floor(Math.random() * 255) + ')';

        //calculating random X position
        var x = Math.floor(Math.random() * $(window).width());

        //calculating random Y position
        var y = Math.floor(Math.random() * $(window).height());

        //creating the dream and hide
        drawingpix = $('<span>').attr({ class: 'drawingpix' }).hide();

        //appending it to body
        $(document.body).append(drawingpix);

        //styling dream.. filling colors.. positioning.. showing.. growing..fading
        drawingpix.css({
            'background-color': color,
            'border-radius': '100px',
            '-moz-border-radius': '100px',
            '-webkit-border-radius': '100px',
            top: y - 14,    //offsets
            left: x - 14 //offsets
        }).show().animate({
            height: '500px',
            width: '500px',
            'border-radius': '500px',
            '-moz-border-radius': '500px',
            '-webkit-border-radius': '500px',
            opacity: 0.1,
            top: y - 250,    //offsets
            left: x - 250
        }, 3000).fadeOut(2000);

        //Every dream's end starts a new dream
         window.setTimeout('dream()', 200);
    }
当runul动画完成后,我想运行showVideo功能。我希望这个函数淡出键入的文本,然后淡出包装在div中的iframe

 function showVideo() {
        $('#divFade').fadeOut(3000);
        animation_stopped = true;
        $(typetext).css('color', 'black');
        $("body").animate({ backgroundColor: "#ffffff" }, 3000);
        $('#divVideos').fadeIn('slow');
       // Animation complete.
        $("#iVideos").prop('src', 'Videos/Quick Start Intro_player.html');
        return false;
      };
在runul完成后,如何让showVideo运行


非常感谢您的帮助

您应该将“showVideo”作为回调函数传递:

setTimeout( function() {runul(showVideo)},8000);

function runul(callback) {
        jQuery("#ticker").ticker({
            cursorList: " ",
            rate: 50,
            delay: 18000
        }).trigger("play").trigger("stop");

        // Trigger events
        jQuery(".stop").click(function () {
            jQuery("#ticker").trigger("stop");
            return false;
        });

        jQuery(".play").click(function () {
            jQuery("#ticker").trigger("play");
            return false;
        });

        callback();

    }

您还可以使用jquery,具体来说,函数应将“showVideo”作为回调函数传递:

setTimeout( function() {runul(showVideo)},8000);

function runul(callback) {
        jQuery("#ticker").ticker({
            cursorList: " ",
            rate: 50,
            delay: 18000
        }).trigger("play").trigger("stop");

        // Trigger events
        jQuery(".stop").click(function () {
            jQuery("#ticker").trigger("stop");
            return false;
        });

        jQuery(".play").click(function () {
            jQuery("#ticker").trigger("play");
            return false;
        });

        callback();

    }


您也可以使用jquery,具体地说,函数

我尝试了回调,但showVideo在runul运行的同时运行。@Sheritager-更新了我的答案,我更改了setTimeout。我正在学习jquery,您有使用defferred的示例吗?谢谢,我试着按照你的建议更改设置超时,现在runul无法运行。文本只是显示而不是键入。非常感谢您的帮助。@devnull69-您说得对,没有注意到,更新了答案我尝试了回调,但showVideo在运行runul的同时运行。@SheriTrager-更新了我的答案,我更改了设置超时。我正在学习jQuery,您有使用defferred的示例吗?谢谢,我试着按照你的建议更改设置超时,现在runul无法运行。文本只是显示而不是键入。非常感谢您的帮助。@devnull69-您是对的,没有注意到,更新了应答器。ticker提供了任何回调参数,可以帮助您在某些ticker操作完成后启动某些操作?这意味着.triggerplay和.triggerstop将在ticker上触发一些异步操作,但是下面的代码(包括下面@ftom2建议的回调)在该操作完成之前就已经运行了……是的,这就是正在发生的事情。我只是尝试了when语句,但也没有运行runul语句$document.readyfunction{dream;$。whenrunul.thenfunction{showVideo;};};您必须在runul中创建一个延迟对象,返回它的承诺,然后在完成时解决延迟问题,以便生成$.when.workDo您有一个我将如何实现它的示例。我尝试过几种不同的方法,但都没有成功。我只是在学习jQuery,所以从一个知道他在做什么的人那里学习一个真正的例子会很有帮助。ThanksDoes.ticker提供任何回调参数,这些参数将帮助您在某些ticker操作完成后启动某些操作?这意味着.triggerplay和.triggerstop将在ticker上触发某些异步操作,但是下面的代码(包括下面@ftom2建议的回调)在该操作完成之前就已经运行了……是的,这就是正在发生的事情。我只是尝试了when语句,但也没有运行runul语句$document.readyfunction{dream;$。whenrunul.thenfunction{showVideo;};};您必须在runul中创建一个延迟对象,返回它的承诺,然后在完成时解决延迟问题,以便生成$.when.workDo您有一个我将如何实现它的示例。我尝试过几种不同的方法,但都没有成功。我只是在学习jQuery,所以从一个知道他在做什么的人那里学习一个真正的例子会很有帮助。谢谢