Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.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 每15秒运行一次jquery函数_Javascript_Jquery_Setinterval - Fatal编程技术网

Javascript 每15秒运行一次jquery函数

Javascript 每15秒运行一次jquery函数,javascript,jquery,setinterval,Javascript,Jquery,Setinterval,我想每15秒运行一次函数,但我的设置间隔不起作用,我不知道为什么。。。函数只调用一次 $(document).ready(function(){ param = new Object(); param['menu_hover_time'] = 5000; function hoverMenuAnimate(){ if(param['menu_hover_flag']) { $('.menu-item-423').delay(param['menu_ho

我想每15秒运行一次函数,但我的设置间隔不起作用,我不知道为什么。。。函数只调用一次

$(document).ready(function(){

param = new Object();
param['menu_hover_time'] = 5000;
    function hoverMenuAnimate(){

    if(param['menu_hover_flag']) 
    {

      $('.menu-item-423').delay(param['menu_hover_time']).queue(function() {
        $(this).trigger('click');

        $('.menu-item-3704').delay(param['menu_hover_time']).queue(function() {
          $(this).trigger('click');

          $('.menu-item-424').delay(param['menu_hover_time']).queue(function() {
            $(this).trigger('click');

            $('.menu-item-422').delay(param['menu_hover_time']).queue(function() {
              $(this).trigger('click');
            });

          });

        });        

      });
    }
  }

  setInterval(hoverMenuAnimate(),15000) 

});
谢谢你的帮助。 致以最良好的祝愿

编辑

问题出在.queue()上:


谢谢大家的帮助

使用
setInterval
接受延迟后执行的函数。当您使用
()
时,您正在调用它。只需将函数引用传递给
setInterval

使用


使用
setInterval
接受延迟后执行的函数。当您使用
()
时,您正在调用它。只需将函数引用传递给
setInterval

使用


使用
setInterval
接受延迟后执行的函数。当您使用
()
时,您正在调用它。只需将函数引用传递给
setInterval

使用


使用
setInterval
接受延迟后执行的函数。当您使用
()
时,您正在调用它。只需将函数引用传递给
setInterval

使用


setInterval(hoverMenuAnimate(),15000)
基本上是每隔15000毫秒用
hoverMenuAnimate
函数的结果显示call setinterval(这是错误的,因为函数不返回任何内容)。你的意思是@Stapal在下面说的<代码>设置间隔(hoverMenuAnimate,15000)这意味着每15000毫秒调用一次
hoverMenuAnimate
函数。除了下面的答案外,您正在使用
queue()
,而不会触发队列中的下一项。对
queue()
的回调传递了一个参数,这是一个应该调用的函数。@Karl:这不完全是重复的。代码中还有其他问题会导致间隔出现故障。@cookiemonster在文章中清楚地说“setInterval不工作,我不知道为什么”和“函数只调用一次…”,因此他当前的问题在重复的文章中得到了回答。一旦他解决了这个问题,他可能会有另一个问题,我同意,但再一次,他可能能够调试它。如果他不能,如果你看灰色框,那么他可以问关于下一个问题的其他问题。或者他可以编辑该问题,使其提出正确的问题,然后ping我,我将很乐意删除标记。
setInterval(hoverMenuAnimate(),15000)
基本上是每隔15000毫秒用
hoverMenuAnimate
函数的结果显示call setinterval(这是错误的,因为函数不返回任何内容)。你的意思是@Stapal在下面说的<代码>设置间隔(hoverMenuAnimate,15000)这意味着每15000毫秒调用一次
hoverMenuAnimate
函数。除了下面的答案外,您正在使用
queue()
,而不会触发队列中的下一项。对
queue()
的回调传递了一个参数,这是一个应该调用的函数。@Karl:这不完全是重复的。代码中还有其他问题会导致间隔出现故障。@cookiemonster在文章中清楚地说“setInterval不工作,我不知道为什么”和“函数只调用一次…”,因此他当前的问题在重复的文章中得到了回答。一旦他解决了这个问题,他可能会有另一个问题,我同意,但再一次,他可能能够调试它。如果他不能,如果你看灰色框,那么他可以问关于下一个问题的其他问题。或者他可以编辑该问题,使其提出正确的问题,然后ping我,我将很乐意删除标记。
setInterval(hoverMenuAnimate(),15000)
基本上是每隔15000毫秒用
hoverMenuAnimate
函数的结果显示call setinterval(这是错误的,因为函数不返回任何内容)。你的意思是@Stapal在下面说的<代码>设置间隔(hoverMenuAnimate,15000)这意味着每15000毫秒调用一次
hoverMenuAnimate
函数。除了下面的答案外,您正在使用
queue()
,而不会触发队列中的下一项。对
queue()
的回调传递了一个参数,这是一个应该调用的函数。@Karl:这不完全是重复的。代码中还有其他问题会导致间隔出现故障。@cookiemonster在文章中清楚地说“setInterval不工作,我不知道为什么”和“函数只调用一次…”,因此他当前的问题在重复的文章中得到了回答。一旦他解决了这个问题,他可能会有另一个问题,我同意,但再一次,他可能能够调试它。如果他不能,如果你看灰色框,那么他可以问关于下一个问题的其他问题。或者他可以编辑该问题,使其提出正确的问题,然后ping我,我将很乐意删除标记。
setInterval(hoverMenuAnimate(),15000)
基本上是每隔15000毫秒用
hoverMenuAnimate
函数的结果显示call setinterval(这是错误的,因为函数不返回任何内容)。你的意思是@Stapal在下面说的<代码>设置间隔(hoverMenuAnimate,15000)这意味着每15000毫秒调用一次
hoverMenuAnimate
函数。除了下面的答案外,您正在使用
queue()
,而不会触发队列中的下一项。对
queue()
的回调传递了一个参数,这是一个应该调用的函数。@Karl:这不完全是重复的。代码中还有其他问题会导致间隔出现故障。@cookiemonster在文章中清楚地说“setInterval不工作,我不知道为什么”和“函数只调用一次…”,因此他当前的问题在重复的文章中得到了回答。一旦他解决了这个问题,他可能会有另一个问题,我同意,但再一次,他可能能够调试它。如果他不能,如果你看看灰色的盒子,那么他可以问另一个关于这个的问题
/* Animated menu */
  function hoverMenuAnimate(){

    if(param['menu_hover_flag']) 
    {

      setTimeout(function(){
        if(!param['menu_hover_flag'])return;
        $('#menu-1 nav#site-navigation .menu-item-422').css('background', '#f0f2f5').children('a').css('color', '#204056');
        $('.menu-item-423').css('background', '#e5251e').children('a').css('color', '#fff');
        $('#submenu-container-1').html(($('.menu-item-423').children('ul.sub-menu').html()));
        $('#submenu-container-1').css('float', 'right').css('marginRight', '110px');

        setTimeout(function(){
        if(!param['menu_hover_flag'])return;
          $('#menu-1 nav#site-navigation .menu-item-423').css('background', '#f0f2f5').children('a').css('color', '#204056');
          $('.menu-item-3704').css('background', '#e5251e').children('a').css('color', '#fff');
          $('#submenu-container-1').html(($('.menu-item-3704').children('ul.sub-menu').html()));
          $('#submenu-container-1').css('float', 'right').css('marginRight', '110px');

          setTimeout(function(){
            if(!param['menu_hover_flag'])return;
            $('#menu-1 nav#site-navigation .menu-item-3704').css('background', '#f0f2f5').children('a').css('color', '#204056');
            $('.menu-item-424').css('background', '#e5251e').children('a').css('color', '#fff');
            $('#submenu-container-1').html(($('.menu-item-424').children('ul.sub-menu').html()));
            $('#submenu-container-1').css('float', 'right').css('marginRight', '110px');
            if(!param['menu_hover_flag']){return;}

            setTimeout(function(){
              if(!param['menu_hover_flag'])return;
              $('#menu-1 nav#site-navigation .menu-item-424').css('background', '#f0f2f5').children('a').css('color', '#204056');
              $('.menu-item-422').css('background', '#e5251e').children('a').css('color', '#fff');
              $('#submenu-container-1').html(($('.menu-item-422').children('ul.sub-menu').html()));
              $('#submenu-container-1').css('float', 'right').css('marginRight', '110px');

              }, param['menu_hover_time']);
            }, param['menu_hover_time']);
          }, param['menu_hover_time']);
        }, 1000);
    }
  }

  hoverMenuAnimate();

  setInterval(function(){ 
    hoverMenuAnimate();
  }, (4*param['menu_hover_time']));
setInterval(hoverMenuAnimate,15000); //Notice removed () from here