`
xiao_2012_wei
  • 浏览: 30837 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

jQuery.each和setTimeout方法小体会

阅读更多

jquery在遍历选定的对象时候用each比较方便。有时满足了某种条件之后,要跳出这个循环。

我们都知道跳出循环一般用break;终止本次循环计入下一个循环用continue.

不巧遇到这个问题,each遍历时下意识 的用了break,想跳出这个循环。结果报错

SyntaxError: unlabeled break must be inside loop or switch

 

 

 

 

在each遍历时,return false就相当于break,

return true相当于continue。

 

如果想和java中一样的感觉,那就只有这样了。(特别注意,for循环里面就不要return了哦)


 

 为了更彻底了解此场景,可以查看JQ源码,each方法其实是这样滴:

 for (name in object) {     
                if (callback.apply(object[name], args) === false) {                     
                    //如果在callback回调函数中使用return false;则不执行下一次循环   
                    break;   
                }   
            }   

 这下就大彻大悟了!

 

另外在处理购物车编辑功能时,用户触发更新购物车操作,既希望浏览器能快速响应用户的请求,又避免对服务器额外的压力,减少重复刷新请求操作。

 

setTimeout肯定是要派上用场的。之前的写法 :

         setTimeout(function(){

                            console.log(“刷新购物车”);

},1500)

每一个请求过来,都只是一个延时动作,事实上每一次请求还是都执行了刷新购物车请求。

 

查询网上资料,又有意外收获:

         setTimeout() 方法的返回值 (数值),用这个数值来唯一确定结束哪一个 setTimeout() 方法

 

杀死之前正在等待的方法,这样就能减少请求了。利用setTimeout()的返回值。

 

      Var update=null;  //一定要定义全局变量,避免第二次初始化了

 

if(updateT){

                  clearTimeout(updateT);

              }

              updateT = setTimeout(function(){

                  console.log(“刷新购物车”);

 

              },500);

 

果然解决问题!

  • 大小: 3.4 KB
  • 大小: 4.5 KB
  • 大小: 4 KB
0
0
分享到:
评论

相关推荐

    Jquery.doc

    - `each()` 方法用于遍历jQuery对象集合,`for` 循环适用于原生JavaScript数组。 7. **事件绑定和触发**: - `$(selector).eventName(function() { })` 直接绑定事件处理器。 - `$(parent).on('eventName', '...

    转载JQuery.txt

    根据提供的文件信息,我们可以从中提炼出与jQuery相关的两个具体示例。这两个示例涉及了基本的jQuery用法,包括事件绑定、元素操作等。接下来,我们将详细解释这些知识点。 ### 知识点一:倒计时按钮实现 #### ...

    Search Highlight in jQuery.zip

    5. **性能优化**:为了确保良好的用户体验,避免在大量文本中频繁搜索和更新DOM可能带来的性能问题,可以使用`setTimeout`或`requestAnimationFrame`来延迟执行高亮操作,或者使用`$.proxy()`和`$.each()`方法优化...

    图形jquery.gvChart-1.0.1.min.js

    setTimeout(function () { // Fix for IE : Allow it to render the iframe frameWindow.focus(); try { // Fix for IE11 - printng the whole page instead of the iframe content if (!frameWindow.document...

    jQuery hover 延时器

    `jQuery.hover`是jQuery提供的一种方法,它结合了`mouseenter`和`mouseleave`两个事件。当你把鼠标指针移动到元素上时,会触发`mouseenter`事件,而当鼠标离开元素时,会触发`mouseleave`事件。这种行为使得开发者...

    自定义jquery插件:为jquery加入Notification机制

    一个简单的jQuery插件通常包括一个函数,该函数接收jQuery对象作为参数,并通过`this.each`方法遍历选中的元素。下面是一个基本的jQuery插件模板: ```javascript (function($) { $.fn.myPlugin = function...

    Jquery即时页面刷新过滤器示例

    在网页开发中,jQuery是一个非常流行的JavaScript库,它极大地简化了DOM操作、事件处理和Ajax交互。本示例“Jquery即时页面刷新过滤器”旨在展示如何利用jQuery实现在表格中进行实时搜索过滤,提高用户体验。这个...

    jQuery css3图片逐个放大缩小显示排列

    `jQuery` 是一个强大的JavaScript库,它简化了DOM操作、事件处理和动画效果,而`CSS3`则提供了丰富的样式和动画功能。接下来,我们将深入探讨如何利用这两个技术来创建图片逐个放大缩小的展示效果。 首先,我们需要...

    jQuery使用的小例子

    8. **遍历和操作集合**:`.each()`, `.map()`, `.filter()`, `.slice()`等方法,对选择的元素集合进行处理。 9. **函数参数和回调**:理解如何使用函数参数和回调函数,如`$(document).ready()`, `$.getJSON()`, `...

    jQuery长文本分页特效.zip

    在网页设计和开发中,jQuery库常常被用来增强和简化JavaScript的功能,特别是在处理用户...同时,这也是一种锻炼和提升JavaScript编程技能的好方法,特别是对于那些希望深入理解jQuery库和网页动态效果的初学者来说。

    jQuery消除方块小游戏源码.zip

    《jQuery消除方块小游戏源码解析》 在编程领域,jQuery是一个非常流行的JavaScript库,它极大地简化了DOM操作、事件处理以及动画效果的创建。在这个名为"jQuery消除方块小游戏源码.zip"的压缩包中,包含了一个使用...

    jquery 多图切换

    jQuery 的 `.hide()` 和 `.show()` 方法可以轻松实现这一效果。同时,`.fadeIn()` 和 `.fadeOut()` 提供了平滑的过渡,使得切换更富动态感。 为了实现多图切换,我们需要一个图片数组,包含所有要展示的图片URL。...

    jQuery动态图片定时切换.zip

    3. **过渡效果**:jQuery的`.fadeIn()`和`.fadeOut()`方法可实现淡入淡出效果,`.slideToggle()`和`.slideUp()`/`.slideDown()`用于滑动切换。通过链式调用这些方法并设置时间参数,可以控制过渡动画的时长和速度。 ...

    jQuery我的日程安排事项代码.zip

    jQuery提供了一系列方便的DOM操作方法,如`append()`、`remove()`和`val()`等。 3. **事件显示**:日程安排事项应以列表或者日历形式展示。可以使用`jQuery.each()`遍历数据并动态创建HTML元素来显示。对于时间轴...

    jQuery网站logo动态展示.zip

    5. **数据遍历和索引操作**:jQuery提供了.each()函数遍历元素集合,以及.index()方法获取元素在集合中的位置,这对于实现轮播逻辑至关重要。 6. **定时器**:可能使用JavaScript的setInterval()或setTimeout()函数...

    jQuery新闻滚动插件 jquery.roller.js

    插件的核心是`$.fn.roller`函数,它是一个扩展jQuery对象的方法。`$.fn`是jQuery的原型,`$.fn.roller`使得我们可以对选择的DOM元素集合执行`roller`方法。 2. **参数与默认设置**: 插件接受一个`options`参数,...

    js和jquery的api

    JavaScript 和 jQuery 是 web 前端开发中的两个关键工具,它们极大地简化了网页交互和动态效果的实现。这里我们将深入探讨 JavaScript(特别是 ECMAScript 5 版本)和 jQuery 1.8.3 的 API,帮助前端开发者更好地...

    jquery 插件开发方法小结

    在JavaScript的世界里,jQuery是一个非常流行的库,它简化了DOM操作、事件处理、动画和Ajax交互。jQuery插件是开发者为了扩展其功能而创建的自定义模块,这使得jQuery能够适应各种各样的项目需求。本篇文章将深入...

    Jquery部分效果练习

    除此之外,jQuery的`.each()`方法对于遍历数组或对象非常有用,这对于批量操作DOM元素非常方便。`.append()`, `.prepend()`, `.before()`, `.after()`等方法则用于在DOM结构中插入新的内容。 在实际练习中,你可能...

Global site tag (gtag.js) - Google Analytics