越来越觉得常规javascript已经跟不上节奏了,打算学点进阶的,从JQuery学起。

JQuery是一个Javascript库,可以从JQuery.com下载,放到本地,用

<script src="jquery.js"></script>

语句来引用。如果不想下载jquery,可以引用web上的jquery库,从google或微软的服务器上引用他们的jquery库。

引用google的jquery库:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>

引用微软的jquery库:

<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.0.js"></script>

推荐引用google或者微软的jquery库。许多用户在访问其他站点时,已经从谷歌或微软加载过 jQuery。所以结果是,当他们访问您的站点时,会从缓存中加载 jQuery,这样可以减少加载时间。同时,大多数 CDN 都可以确保当用户向其请求文件时,会从离用户最近的服务器上返回响应,这样也可以提高加载速度。

所有的JQuery函数都位于一个 document ready 函数中

$(document).ready(function(){
--- jQuery functions go here ----
});

这是为了防止文档在完全加载(就绪)之前运行 jQuery 代码。如果在文档没有完全加载之前就运行函数,操作可能失败。

Jquery选择器就不讲了。两个要注意的地方都说完了,下面演示一个实例,我把以前用常规javascript写的进度条用jquery有重新写了一遍,虽说用的知识点都很简单,但写出来也费了我一番心思的,因为有些东西和常规javascript还是不一样,这个放在代码后面说。下面是进度条完整代码。

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>JQuery之进度条</title> <!--加载google的jquer库y-->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script>
$(document).ready(function(e) {
var i = ;//进度百分值 //为id="btn"的元素(Start按钮)添加click事件,点击后进度条开始增长
$("#btn").click(function(){ //为id="val"的元素(进度条div)添加动画,在3000毫秒内进度条宽度从0px增长到300px
$("#val").animate({width:'300px'},);
$(this).attr("disabled",true);//禁用Start按钮
$("#btnp").attr("disabled",false);//启用Pause按钮
setPercent();//调用setPercent()函数,后面的百分数开始计数
}); //百分数计数函数
function setPercent()
{
//进度条未满的时候
if(i <= )
{
$("#percent").html(i+"%");//设置进度百分数的值
i = i + ;//将进度百分值+1
st = setTimeout(setPercent,);//每3毫秒执行一次本函数,相当于进度条每3毫秒增加1%
} //进度条满的时候
else
{
clearTimeout(st);//进度百分数停止增加
$("#btnc").attr("disabled",false);//启用Clear按钮
$("#btnp").attr("disabled",true);//禁用Pause按钮
}
} //为id="btnc"的元素(Clear按钮)添加click事件,点击后回到初始状态
$("#btnc").click(function(){
i = ;//进度百分值置零
$("#val").css("width","0px");//进度条置零
$("#percent").html("0%");//进度百分值置零
$("#btnp").val("Pause");//Pause按钮value设置成"Pause"
$("#btn").attr("disabled",false);//启用Start按钮
$("#btnp").attr("disabled",true);//禁用Pause按钮
$("#btnc").attr("disabled",true);//禁用Clear按钮
}); //为id="btnp"的元素(Pause按钮)添加click事件,点击后进度条被暂停或继续
$("#btnp").click(function(){
//如果按钮值为Pause,表示按下之后暂停进度
if("Pause" == $("#btnp").val())
{
$("#val").stop();//停止进度条动画
clearTimeout(st);//停止百分值增长
$("#btnp").val("Go on");//将按钮值设置为Go on
$("#btnc").attr("disabled",false);//启用Clear按钮
} //如果按钮值为Go on,表示按下之后继续进度
else
{
i = parseInt(delEnd($("#percent").html()));//获取暂停时的百分值字符串,去掉分号,并转为整数
var temp = * ( - i);//计算动画剩余时间
$("#val").animate({width:'300px'}, temp);//继续动画
setPercent();//百分值继续增长
$("#btnp").val("Pause");//将按钮值设置成"Pause"
$("#btnc").attr("disabled",true);//禁用Clear按钮
}
}); //去除百分值字符串里面的分号的函数
function delEnd(str)
{
var temp="";
for(var i=; i < str.length-; i++)
{
temp=temp+str[i];
}
return temp;
}
});
</script>
</head> <body>
<div id="bar" style="width:300px; height:30px; border:solid 1px; float:left;">
<div id="val" style="height:100%; background-color:#03F; width:0px;"></div>
</div>
<div id="percent" style="float:left; line-height:30px;">%</div>
<div style="clear:both"></div>
<br />
<input id="btn" type="button" value="Start" />
<br />
<input id="btnc" type="button" value="Clear" disabled />
<br />
<input id="btnp" type="button" value="Pause" disabled />
</body>
</html>

这次主要花了些时间在实现百分值的增长上,因为要用到setTimeout()函数,在jquery中,setTimeout(code,delay)里面的code如果是函数的话只要填函数名就行了,不需要引号,不需要括号。比如,有一个function show(),设置500ms后调用show(),在jquery中应该这样写:

setTimeout(show, 500);

而在传统javascript里面却要这样写:

setTimeout("show()", 500);

这一点对于setInterval()也是一样的。

JQuery入门——进度条的更多相关文章

  1. 基于jQuery带进度条全屏图片轮播代码

    基于jQuery带进度条全屏图片轮播代码.这是一款基于jQuery实现的oppo手机官网首页带进度条全屏图片轮播特效.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div ...

  2. JQuery UI进度条——Progressbar

    1.先引入jquery和jquery-ui的js,例子如下: <link href="JqueryUI/jquery-ui.css" rel="stylesheet ...

  3. jquery自定义进度条与h5原生进度条

      介绍一款自定义的进度条 <div class="box-nine"> <div class="progress"> <!--一 ...

  4. jquery 圆形进度条

    最近手里面的项目需要完成这个对设备性能的检测显示功能,需要使用到圆形进度条这样的效果,网上找了一圈,有很多相当的插件,找到:circliful 插件,看了他的使用说明比较的方便,于是就下载了它并将自己 ...

  5. 基于Jquery的进度条插件(实用)

    Spin.js 最喜欢这款插件了,动画图片的长度.粗细.速度和角度都可以灵活控制,想要做成什么样都可以. 源码下载    在线演示   Percentage Loader 一款轻量的 jQuery 进 ...

  6. html + css + jquery实现简单的进度条实例

    <!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head><meta ...

  7. bootstrap与jQuery结合的动态进度条

    此款进度条实现的功能: 1.利用了bootstrap的进度条组件. a.在最外层的<div>中加入class .progress,在里层<div>加入class .progre ...

  8. struts2:上传多个文件时实现带进度条、进度详细信息的示范

    上一篇文章讲了上传单个文件与上传多个文件(属性驱动)的例子.本例是上传多个文件(属性驱动),并且显示进度条.进度详细信息的示范. 在文件上传选择界面,允许用户增加.删除选择的文件,且只能上传指定类型的 ...

  9. jq进度条

    <!doctype html><html><head><meta charset="utf-8"><title>JQue ...

随机推荐

  1. 「Ionic」創建新項目

    1.創建新項目 创建一个名为myApp的还有tabs的项目(ionic start <project-name> <optional-template>) 可选模板为sidem ...

  2. windows不能显示此连接属性。windows management instrumentation (WMI) 信息可能损坏

    Windows Management Instrumentation (WMI)信息可能损坏错误修复 在 查看“本地连接”的属性,并切换到“高级”选项卡后,提示:“Windows不能显示此连接的属性. ...

  3. 初识Aop和扩展Aop

    一.什么叫做AOp 解析:Aop(Aspect Oriented Programming)是面向切面编程,软件编程的一种思想. OOp(Object Oriented Programming)是面向对 ...

  4. 模拟Executor策略的实现

    Executor作为现在线程的一个管理工具,就像管理线程的管理器一样,不用像以前一样,通过start来开启线程 Executor将提交线程与执行线程分离开来,使得用户只需要提交线程,并不需要在乎怎么和 ...

  5. Git安装图解

    msysgit是Windows版的Git,提供了命令行操作 下载地址:http://msysgit.github.io/

  6. Hibernate框架(未完待续······)

        作为SSH三大框架之一的Hibernate,是用来把程序的Dao层和数据库打交道用的,它封装了JDBC的步骤,是我们对数据库的操作更加简单,更加快捷.利用Hibernate框架我们就可以不再编 ...

  7. java:JDBC详解

    JDBC全称为:Java DataBase Connectivity(java数据库连接). SUN公司为了简化.统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC.     简单 ...

  8. Quartz.NET开源作业调度框架系列(二):CronTrigger

    CronTriggers比SimpleTrigger更加的灵活和有用,对于比较复杂的任务触发规则,例如"每个星期天的晚上12:00"进行备份任务,SimpleTrigger就不能胜 ...

  9. ContentTools – 所见即所得(WYSIWYG)编辑器

    Content Tools是一个用于构建所见即所得编辑器(WYSIWYG)的 JavaScript 库.ContentTools 所见即所得的编辑器只需要几个简单的步骤就可以加入到任何的 HTML 页 ...

  10. JavaScript事件机制——细思极恐

    JavaScript事件机制,也有让人深思的东西.在一开始未深入了解,我头脑里有几个问题发出: 1. 自下而上(冒泡)事件怎么写,自上而下(捕获)又是怎么写? 2. 捕获型和冒泡型同时设置,谁生效? ...