Tag: settimeout

setInterval和setTimeout

var myTimer = setInterval(function(){ var eleID = ”; var delayTimer = ”; $(‘#hp-fcas li’).each(function(i) { eleID = $(this).attr(‘id’); delayedTrigger( $(‘#’+eleID + ‘ a’), 7000*i); }); function delayedTrigger(elem, delay){ setTimeout(function(){ $(elem).trigger(‘click’); }, delay ); } }, 21000); $(“.play”).click(function(){ clearTimeout(); clearInterval(myTimer); }); 第一个实例的第一个间隔是21秒。 第二个间隔是3个7秒的实例(我想要的)。 当我点击.play时,我正试图清除以上所有内容。 有帮助吗?

计时器上的jQuery UI进度条

我的页面顶部有一个进度条,我用它来显示用于刷新所有图表的1分钟计时器。 我遇到的问题是它似乎永远不会一致。 function headerBar() { var progressbar = $(‘#timerBar’); progressbar.progressbar({ value: 0 }); function progress() { var val = progressbar.progressbar(‘value’) || 0; progressbar.progressbar(‘value’, val + 5); if (val < 99) { setTimeout(progress, 3000); } } progress(); } headerBar(); setInterval(function () { headerBar(); }, 60 * 1000); 它第一次运行正常,但第二次似乎需要1/2的时间,并且每次之后似乎从计数中减去了时间。 这是小提琴

是否可以在localstorage中存储setTimeout函数?

前提是我有以下javascript代码。 var timeout = setTimeout(function(){ alert(‘this is executed after 5 seconds’); }, 5000); localStorage.setItem(‘timeout_event’, timeout); 我已经检查了setTimeout函数的返回值是一个id或者什么。 如果用户刷新页面,我该如何重新运行超时事件? 它甚至可能吗? 任何帮助都可以。 先感谢您。

jQuery插件,context和setTimeout

我正在为jQuery编写一个插件,我在javascript中遇到了上下文问题。 这是我的插件的简化版本: (function($){ $.fn.myplugin = function(options){ return new MyPlugin(this, options); }; function MyPlugin(el, o ) { this.root = el; this.input_box = el.find(‘#the_input’); this.map = null; this.timeout = null; var self = this; self.input_box.keyup( function(){ if( self.timeout!==null ) { clearTimeout( self.timeout ); } self.timeout = setTimeout( function(){ self.search_address( self ); }, 500 ); }); } MyPlugin.prototype […]

鼠标退出时的clearTimeout

我有一个像这样的计时器设置: var timerID; $this.hover(function(){ $this.find(‘.stage_obj’).each(function(index){ var current_obj = $(this); timerID = setTimeout(function(){ animate_on_top(current_obj, index);}, parseInt(OS.delay_y_on_set[index],10)); }); }, function(){ clearTimeout(timerID); }); 有一些function可以控制hover时的动画输入/输出。 定时器充当延迟(.delay在我的情况下不起作用)。 一切正常,除了鼠标退出时没有取消计时器,仍然会触发。 这是被调用的实际animation_on函数: function animate_on_top(current_obj, index){ current_obj.animate( {‘top’:OS.ends_y_set[index]}, {duration:500, queue:false, specialEasing:{‘top’:’linear’} }); 任何人都有任何想法为什么setTimeout没有取消计时器? 谢谢!

jQuery每个都有超时

除了一件事,我有以下function运行正常。 它首先附加的内容没有任何后果。 (function biograf(){ var placeholder = $(‘#top-imageholder’); $(‘ul#biomenu > li’).each(function(){ var obj = $(this); var pageLink = obj.find(‘a:first’).attr(‘href’); $.get(pageLink, function(data) { placeholder.append( $(data).find(‘#top-imageholder’).html() ); placeholder.append( $(data).find(‘#top-imageholder’).siblings(‘ul’) ); }); }); })(); 我希望函数按照我的列表项放在#biomenu中的顺序追加占位符。 它在90%的情况下都会这样做,但偶尔它会以不同的顺序附加。 有什么建议?

以编程方式设置值时的jQuery-ui滑块动画

我正在使用jQuery-ui滑块和一些按钮来快速选择一组值。 当用户单击其中一个按钮时,滑块将通过.slider方法设置为相应的值: $(“#mySlider”).slider(“value”, myValue); 这很好用,但我想看看滑动动画。 我试过了 $(“#mySlider”).slider({value:myValue, animate:true}) 但它不能按预期工作,因为动画仅在用户点击滑块栏后启用。 我应该使用setTimeout编写一个函数来实现我想要的function,还是有更高级别的方法来使用jQuery?

在JavaScript中等待包装setTimeout中的所有内容

所以,我正在创建一个机器人来在线玩video游戏(完全合法,有一个服务器用于机器人比赛,不用担心)。 代码是用JavaScript编写的,我现在才拿起来,而且我无法告诉机器人做某事,然后等待时间或条件,直到做其他事情。 到目前为止,我只是将所有东西都包装在巨大的setTimeout命令中,但这非常不优雅。 没有太多的代码与post相关,但实质上我已经编写了大量的代码来执行诸如移动到特定位置,制动,追逐其他玩家等等。大多数使用递归setTimeout命令 – 按某些按钮,重置变量,如果不满足条件,则再次启动该function。 如果我想移动到一个特定的位置,然后在我完成时制动,通常我会把代码放在这样: moveTarget(target); brake(); […Execute rest of code…] 但是,JavaScript同时执行这两个命令,这显然不能很好地工作。 有没有办法制作更像这样的东西(或等效的条件而不是指定的时间): moveTarget(target); wait3Seconds(); brake(); […Execute rest of code…] 无需这样做: moveTarget(target); setTimeout(function(){ brake(); […Execute rest of code…] },3000); 鉴于我将拥有多少这样的情况,我的代码最终会看起来像一个巨大的嵌套setTimeouts混乱,这不是很漂亮。 有没有更好的办法? 我已经在使用JQuery,所以我非常愿意在必要时使用它。

jQuery以随机间隔将背景图像更改为几个div

我的网站上有几个显示在一起的div,每个div都有不同的背景图像。 我创建了一个脚本,以随机的时间间隔更改背景图像,然而,脚本同时更改所有图像….我希望每个图像随机更改,完全独立于另一个….我也希望它们褪色,但时机是关键问题。 这是我正在使用的脚本。 jQuery(window).load(function(){ var images = [‘images/gallery/gallery2thumb.jpg’,’images/gallery/gallery3thumb.jpg’,’images/gallery/gallery4thumb.jpg’,’images/gallery/gallery5thumb.jpg’,’images/gallery/gallery6thumb.jpg’,’images/gallery/gallery7thumb.jpg’,’images/gallery/gallery8thumb.jpg’,’images/gallery/gallery9thumb.jpg’,]; var i = 0; var timeoutVar; function changeBackground() { clearTimeout(timeoutVar); // just to be sure it will run only once at a time jQuery(‘.hexagon-in2.change’).css(‘background-image’, function() { if (i >= images.length) { i=0; } return ‘url(‘ + images[i++] + ‘)’; }); timeoutVar = setTimeout(changeBackground, ( 300+Math.floor(Math.random() * 1700) […]

jQuery Ajax setTimeout JSON

我正在使用jQuery AJAX来调用JSON服务。 然后我将数据吐出到.html。 我想要做两件事。 1.我想要一个刷新按钮来刷新数据,而不是整个页面。 2.我想要一个setTimeout或setInterval(效果最好)每5分钟左右更新一次数据。 但刷新页面。 如何将AJAX包装在setTimeout或setInterval中,或者每隔5分钟左右使用一个按钮和一个计时器刷新数据。 我知道这应该很简单,但我无法让它发挥作用。 提前致谢。 以下是我的代码。 $.ajax({ type: “POST”, url: “/myservice.asmx/WebMethod”, data: “{}”, contentType: “application/json; charset=utf-8”, dataType: “json”, success: function (msg) { var myval = msg.d; // $(‘#jsonstring’).html(myval); var obj = jQuery.parseJSON(myval); $(‘#Data1’).html(obj.DataOne); $(‘#Data2’).html(obj.DataTwo); }, error: function (xhr, ajaxOptions, thrownError) { alert(xhr.statusText); alert(xhr.responseText); alert(xhr.status); alert(thrownError); } });