`
chengyong
  • 浏览: 29007 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jquery的queue实例应用demo

阅读更多

要不是被逼到无奈的地步,我也不想弄这么复杂。 那帮做java开发的真不好沟通,本来他们那边处理好了给我一个完整的数据结构就可以了,但是现在我拿到他们给的不完整的数据结构,还需要根据每次解析遍历的值去额外请求数据,如果直接发起异步请求,代码写的又不太优雅;如果发同步请求,服务一直处于等待状态,体验性又不太好。

基于这样的前提,我就想到了用队列来实现,算是稍微优雅一点吧

Js代码部分:

 

// 定义函数执行队列
var aFun = [];
$(function(){
	$("input[name='test']").click(function(){
		begin_queue();
		$(document).queue("testQueue", aFun);
		$(document).dequeue("testQueue");
	});
});

//初始化队列
function begin_queue()
{
	var obj = $("input[type='hidden']");
	obj.each(function(i){
		var $this = $(this), $val = $this.val();
		var queue_fun = function(){
			callback($this, $val);
		};
		
		//压入函数队列
		aFun.push(queue_fun);
	});
}

//每次遍历回调处理
function callback(elm, data)
{
	var str = $("#queue").html() + elm.attr("no") + ":" + data * data + "<br>";
	$("#queue").html(str);
	
	//继续执行队列中下一个函数
	$(document).dequeue("testQueue");
}

 HTML结构部分:

<div id="queue"></div>
<input type="hidden" class="required" name="star.key" no="1" value="1" />
<input type="hidden" class="required" name="star.key" no="2" value="2" />
<input type="hidden" class="required" name="star.key" no="3" value="3" />
<input type="hidden" class="required" name="star.key" no="4" value="4" />
<input type="hidden" class="required" name="star.key" no="5" value="5" />
<input type="hidden" class="required" name="star.key" no="6" value="6" />
<input name="test" type="button" value="Start" />

 运行效果:



 

  • 大小: 18.6 KB
分享到:
评论

相关推荐

    30个jquery经典Demo

    《jQuery经典Demo详解:探索30个精彩实例》 jQuery,作为一款强大的JavaScript库,以其简洁的API和高效的功能,深受Web开发者的喜爱。这里我们聚焦于30个经典的jQuery Demo,它们涵盖了从基础交互到复杂动画的各种...

    jquery的动画效果

    Demo通常包含HTML、CSS和JavaScript文件,通过查看和修改代码,你可以深入理解jQuery动画的工作原理,并将其应用到自己的项目中。 通过实践和实验,你会发现jQuery的动画功能不仅可以提升用户体验,还能为网页设计...

    plupload上传插件 基于jquery 有demo

    由于它基于jQuery库,因此可以方便地与现有的jQuery应用程序集成,为用户提供无缝的文件上传体验。 ### Plupload的核心特性 1. **跨浏览器兼容性**:Plupload支持所有主流浏览器,包括Internet Explorer(从6.0...

    jQuery入门教程,一天学会jQeury,附代码Demo和视频教程

    3. **AJAX交互实例**: 展示了如何使用jQuery进行异步数据请求。 4. **插件应用**: 可能包括了第三方插件的集成和使用。 通过运行这些代码示例,你可以更直观地理解jQuery的用法,并结合视频教程加深理解。同时,...

    jquery无刷新文件上传swfupload

    2. **Queue Demo**:队列管理示例,演示了如何处理文件队列,包括添加、删除和暂停文件上传。 3. **Upload Progress Bar**:上传进度条示例,展示了如何实时更新上传进度,并呈现给用户。 4. **Custom Buttons**:...

    jquery:学习jquery的一些demo以及笔记

    本篇文章将深入探讨jQuery的核心概念、常见用法及其实战应用,旨在帮助读者从零开始学习并熟练掌握jQuery。 一、jQuery简介 jQuery是由John Resig在2006年创建的,其目标是“write less, do more”。jQuery以其简洁...

    jquery例子大全

    本文将深入探讨“jQuery例子大全”中涵盖的关键知识点,旨在帮助读者更好地理解和应用jQuery,提升Web开发效率。 一、jQuery的选择器与遍历 jQuery的核心功能之一就是高效地选择DOM元素。在“demo”文件中,你可以...

    jQuery详细教程

    关键点是学习 jQuery 选择器是如何准确地选取您希望应用效果的元素。 jQuery 元素选择器和属性选择器允许您通过标签名、属性名或内容对 HTML 元素进行选择。 选择器允许您对 HTML 元素组或单个元素进行操作。 在 ...

    jquery左侧浮动层热门新闻列表滑动动画展示

    【标题】"jQuery左侧浮动层热门新闻列表滑动动画展示"是基于JavaScript库jQuery实现的一种...通过深入研究这个实例,你可以提高自己的jQuery技能,同时也可以学习如何创建自己的自定义插件,从而提升你的Web开发能力。

    jQuery_Demo:基本jQuery功能的简单说明

    在"jQuery_Demo"这个项目中,我们将深入探讨jQuery的核心特性,以便更好地理解和应用到实际的Web开发中。 ### 1. DOM操作 DOM(Document Object Model)是HTML和XML文档的结构化表示,jQuery提供了方便的API来操作...

    基于PNotify的轮询Demo

    这个"基于PNotify的轮询Demo"是展示如何结合PNotify实现定时轮询更新通知功能的一个实例。下面将详细解释PNotify的基本概念、其在轮询中的应用以及如何实现这样的功能。 首先,PNotify是一个轻量级的库,它使用...

    AJAX Queue Class-开源

    `demo.html`是一个示例文件,展示了如何在实际应用中使用这个AJAX队列类。它可能包含了如何实例化队列对象、添加请求、设置并发限制以及定义回调函数的代码片段。通过查看这个示例,开发者可以快速理解如何将这个库...

    大名鼎鼎SWFUpload- Flash+JS 上传

    动态修改实例设置 接收服务端返回的数据 (只针对Flash 9 版本) 非取消形式的停止文件上传 自定义上传的顺序 支持单文件、多文件的文件的选择 文件入队数量,文件上传数量和文件大小的限制 更合理地处理0字节的...

    WebUploader+SpringMVC实现文件上传功能

    同时,需要引入jQuery、Bootstrap和WebUploader自身的JavaScript库,以及`uploader_demo.js`,这个文件通常包含了WebUploader的初始化配置和事件处理函数。 前端页面中,一个典型的WebUploader实例化区域可以是这样...

Global site tag (gtag.js) - Google Analytics