JQuery无废话系列教程(一) 入门

wansijie 2009-06-23 09:10:37
加精
前言
贝壳(就是本文作者了)也属于刚刚会用点JQuery的那一类型, 在学习过程中也遇到挺多问题,特别是在开始入门的时候.一直准备写些有关JQuery的文章,但又恐自己文笔及表达能力有限而"误人子弟",最终还是鼓起勇气. 如在文章中有错误或者不合适的理解望广大朋友直接指出批评.

本文的宗旨, 授人鱼不如授人渔. 我只会讲关键部分,不可能JQuery的每个函数我都讲,因为有很多函数贝壳自己在实际应用中都从未使用过. 但当我们已经会渔了还用担心鱼吗!?

BTW:贝壳假设你已经掌了基本的JavaScript运用能力及基础的CSS知识.

JQuery是什么

JQuery只是一个JS文件

人对新鲜事业总是报着好奇与排斥的情感,贝壳刚开始学的时候也一样. 想掌握又怕自己学不会. 其实JQuery很简单.

JQuery其实就是一个工具包,很多常用的功能已经被好心人封装好,我们真要直接调用就可以了(有点类似SDK),具体内部原理和实现我们现在不去讨论. 记住JQuery很简单,很方便.

目前jQuery最新Release版本为1.32,官方下载地址为:http://docs.jquery.com/Downloading_jQuery

本系列教程基于1.32版进行讲解.

JQuery有两种版本:

一种为uncompressed版(未压缩版)主要用在开发中.

另一种为Minified(迷您版)当开发完毕了,就可以改用这个版本.

两种版本的区别

文件大小不一样, 最终用户在浏览时可以减少下载JS时的等待时间.

Uncompressed版文件大小为118KB

Minified版文件大小为56KB



JQuery能带给我们什么

一, 站在巨人的肩上

别人已经发明了轮子,我们没必要自己再去造一个.

二, 强大的BOM,DOM,CSS,事件 的操作能力

我最常用的是CSS及DOM的操作,真的太方便了.

三, 更加简洁的代码

自己的亲身经历,比如表格(Table)中的TR奇偶为两种颜色的代码如果自己用JavaScript去编号得用几十行代码,JQuery只需要2行就可以了.

四, 与浏览器无关性

做过JavaScript开发的就知道JavaScript在不同的浏览器下行为表现有时不一样,我们不得不为不同的浏览器编写相应的代码. JQuery在这方法已经内部处理,我们只管去用就是了.

五, 不错的性能

我自己有自知之明, 至少我写的JavaScript代码的运行效率不如JQuery的高.

如何使用JQuery

万年开头难,我在第一次使用JQuery时被吓到过,不知道怎么使用,其实很简单,下面我们用一个例子来说明. : )



建立一个html文件,比如index.html 并与JQuery库文件jquery-1.3.2.js放到同目录下(其实放那都可以)

首先我们解决JQuery的引用. 代码如下:

<html>

<head>

<title>JQuery测试</title>

<script language="javascript" src="jquery-1.3.2.js"></script>

</head>

<body>

</body>

</thml>

红色的那一行代码就完成了JQuery的引用,简单吧!



现在我们再扩充一个功能,使 index.html显示一个表格,并且表格内各行的颜色奇偶不同.也就是奇数行是一种颜色,偶数行又是另一种颜色.

index.html代码结构:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>JQuery测试</title>
<style type="text/css">

/*table中偶数行*/

.tabEven {
background: #ff0000;
}

/*table中奇数行*/

.tabOdd {
background: #00ff00;
}
</style>
<script language="javascript" src="jquery-1.3.2.js">
</script>
<script language = "JavaScript" type="text/javascript">
//<![CDATA[
$(document).ready(function(){
$("#tabTest tr:even").addClass("tabEven");
$("#tabTest tr:odd").addClass("tabOdd");
});
//]]>
</script>
</head>
<body>
<table id="tabTest">
<tbody>
<tr>
<td>快购利众网_1</td>
<td>1</td>
</tr>
<tr>
<td>快购利众网_2</td>
<td>1</td>
</tr>
<tr>
<td>快购利众网_3</td>
<td>1</td>
</tr>
<tr>
<td>快购利众网_4</td>
<td>1</td>
</tr>
<tr>
<td>快购利众网_5</td>
<td>1</td>
</tr>
</tbody>
</table>
</body>
</thml>


效果如下:
[img=http://p.blog.csdn.net/images/p_blog_csdn_net/wansijie/EntryImages/20090622/JQuery_chapter1.jpg] [/img]




代码解析:

$(document).ready(function(){
$("#tabTest tr:even").addClass("tabEven");
$("#tabTest tr:odd").addClass("tabOdd");
});


$(document).ready 的作用很简单,就是等待网页全部内部载入后再执行JavaScript代码(别忘了JQuery也是JavaScript代码哟), 这个函数几乎在所有使用JQuery的代码中都用到. 因为如果我们的Javascript代码中如果有DOM操作,在网页还没完全读取完时整个DOM框架还没有真正建立起来,在这之前的DOM操作都是无效的.


$("#tabTest tr:even").addClass("tabEven"); 为id为tabTest的表格的偶数行增加名为tabEven的CSS样式
$("#tabTest tr:odd").addClass("tabOdd"); 为id为tabTest的表格的奇数行增加名为tabEven的CSS样式



最后, 初学者千万不要为陌生的代码而感到不知所措,记住JQuery很简单.


作者信息:万思杰,网名贝壳,快购利众创始人.想看作者更多文章请搜索快购利众或万思杰.
  版权声明:欢迎免费转载,转载时请保留原作者信息,谢谢合作!
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wansijie/archive/2009/06/22/4288036.aspx
...全文
12228 146 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
146 条回复
切换为时间正序
请发表友善的回复…
发表回复
KevinSu 2011-05-03
  • 打赏
  • 举报
回复
与浏览器的无关性很好啊,要不还得挨个调啊
jimmy_happy 2010-11-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 sunxing007 的回复:]
强烈支持楼主,你写了我天天看。本来我不用jquery, 现在打算学以下

cjfriends 2010-11-12
  • 打赏
  • 举报
回复
虽然会用,但没有系统的学过,好好学习,谢谢楼主
wangkm 2010-10-23
  • 打赏
  • 举报
回复
感谢楼主的经验之谈
personball 2010-10-23
  • 打赏
  • 举报
回复
JQuery确实不错,适合新手,咱还没系统学过JS,不过JQ基本看完《锋利的jquery》里选择器那章,就开始用了,入门快。。。
cfg630 2010-10-22
  • 打赏
  • 举报
回复
\(^o^)/~ ,顶楼主
echoxu_2010 2010-08-25
  • 打赏
  • 举报
回复
不错,mark一下
bopirate 2010-08-25
  • 打赏
  • 举报
回复
支持楼主,受益匪浅啊。
山脚下的牧童 2010-07-25
  • 打赏
  • 举报
回复
呃…… 其实你写的这个代码很简单的 不过还是顶你一下 有空多交流交流啊 呵呵呵
leemiki 2010-06-02
  • 打赏
  • 举报
回复
挺好的
流氓兔 2010-06-02
  • 打赏
  • 举报
回复
学学用用呗!!!!!!!!!!!!!!
sage425 2010-05-31
  • 打赏
  • 举报
回复
我也是一个新手,请问下那css掌握到什么程度 才有可能看懂 楼主的代码
zyzy15 2010-05-31
  • 打赏
  • 举报
回复
mark
cpt_adt2010 2010-05-31
  • 打赏
  • 举报
回复
很棒,收录了
jiangxi43 2010-05-31
  • 打赏
  • 举报
回复
学习了。
wanghuaide 2010-05-30
  • 打赏
  • 举报
回复
很好的例子
skyaspnet 2010-05-30
  • 打赏
  • 举报
回复
学习。。。
hughlee 2010-05-30
  • 打赏
  • 举报
回复
顶个,等我SSH学完了,要好好研究下JS,会用到JQuery的 哈哈
  • 打赏
  • 举报
回复
本来我不用jquery, 现在打算学以下
zhyzdl 2010-05-30
  • 打赏
  • 举报
回复
好贴啊,我正在发愁呢!
加载更多回复(121)

87,995

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧