jquery入门

jQuery中文入门指南,翻译加实例,jQuery的起点教程

中文版译者:Keel

此文以实例为基础一步步说明了jQuery的工作方式。现以中文翻译(添加我的补充说明)如下。如有相关意见或建议请 EMAIL 告知。或者在 BLOG中留言。 英文原版:

http://docs.jquery.com/Tutorials:Getting_Started_with_jQuery ,感谢原文作者 J?rn Zaefferer 本文发布已征求原作者同意。

说明:在本教程发布之后,得到了几个网友的指正,对部分内容作了修正,但在jQuery版本不断更新的情况下,教程中的某些内容已经过时(尤其是1.3以上版本),在忠于原文的基础上,我将这部分内容加以标红的补充说明,希望更多的前端开发者能对此文提出宝贵意见,谢谢! --2009-3-10

另外我认为在学习过程中,有两个API文档你要打开随时查看: http://api.jquery.com/ [注:已更新为jquery新地址] ? http://visualjquery.com/

?

如果想了解更多jQuery及插件信息,可访问本站首页. 以下部分为原文翻译:

jQuery入门指南教程

这个指南是一个对jQuery库的说明,要求读者了解HTML(DOM)和CSS的一些常识。它包括了一个简单的Hello World的例子,选择器和事件基础,AJAX、FX的用法,以及如何制作jQuery的插件。 这个指南包括了很多代码,你可以copy它们,并试着修改它们,看看产生的效果。

内容提要

1. 安装

2. Hello jQuery

3. Find me:使用选择器和事件 4. Rate me:使用AJAX

5. Animate me(让我生动起来):使用FX

6. Sort me(将我有序化):使用tablesorter插件(表格排序) 7. Plug me:制作您自己的插件 8. Next steps(下一步)

安装

一开始,我们需要一个jQuery的库,最新的下载可以到这里找到。这个指南提供一个基本包含实例的包供下载. 下载:jQuery Starterkit

(译者Keel注:一定要下载这个包,光看文章不实践肯定是不行的。) 下载后解压缩,然后用你最喜欢的文本编辑器打开starterkit.html和

custom.js这两个文件。(译者Keel注:这两个就是例子文件,所有的例子都用这两个例子作出,custom.js写jQuery代码,starterkit.html观察效果.建议用editPlus打开)

现在,我们就已经做好了一切准备来进行这个著名的\例子. 本章的相关链接: Starterkit

? jQuery Downloads

?

Hello jQuery

在做所有事情之前,我们要让jQuery读取和处理文档的DOM,必须尽可能快地在DOM载入后开始执行事件,所以,我们用一个ready事件作为处理HTML文档的开始.看看我们打开的custom.js这个文件,里面已经准备好了: $(document).ready(function() { // do stuff when DOM is ready });

放一个简单的alert事件在需要等DOM完成载入,所以我们把任务稍稍变复杂一点:在点击任何一个链接时显示一个alert. $(document).ready(function() { $(\

});

});

alert(\

这样在你点击页面的一个链接时都会触发这个\的提示。 (译者Keel注:请照此代码修改custom.js并保存,然后用浏览器打开starterkit.html观察效果。)

让我们看一下这些修改是什么含义。$(\是一个jQuery选择器(selector),在这里,它选择所有的a标签(译者Keel注:即),$号是 jQuery “类”(jQuery \$()构造了一个新的jQuery 对象(jQuery object)。函数 click() 是这个jQuery对象的一个方法,它绑定了一个单击事件到所有选中的标签(这里是所有的a标签),并在事件触发时执行了它所提供的alert方法.

这里有一个拟行相似功能的代码:

不同之处很明显,用jQuery不需要在每个a标签上写onclick事件,所以我们拥有了一个整洁的结构文档(HTML)和一个行为文档(JS),达到了将结构与行为分开的目的,就像我们使用CSS追求的一样. 下面我们会更多地了解到选择器与事件. 本章的相关链接: jQuery Core

? jQuery Selectors ? jQuery Events

?

Find me:使用选择器和事件

jQuery提供两种方式来选择html的elements,第一种是用CSS和Xpath选择器联合起来形成一个字符串来传送到jQuery的构造器(如:$(\);第二种是用jQuery对象的几个methods(方法)。这两种方式还可以联合起来混合使用。

为了测试一下这些选择器,我们来试着在我们starterkit.html中选择并修改第一个ordered list.

一开始,我们需要选择这个list本身,这个list有一个ID叫“orderedlist”,通常的javascript写法是document.getElementById(\在jQuery中,我们这样做:

$(document).ready(function() { $(\});

这里将starterkit中的一个CSS样式red附加到了orderedlist上(译者Keel注:参考测试包中的css目录下的core.css,其中定义了red样式)。因此,在你刷新了starterkit.html后,你将会看到第一个有序列表(ordered list )背景色变成了红色,而第二个有序列表没有变化. 现在,让我们添加一些新的样式到list的子节点. $(document).ready(function() { $(\});

这样,所有orderedlist中的li都附加了样式\。

现在我们再做个复杂一点的,当把鼠标放在li对象上面和移开时进行样式切换,但只在list的最后一个element上生效。

$(document).ready(function() { $(\ $(this).addClass(\ }, function() { $(this).removeClass(\ }); });

还有大量的类似的CSS和XPath例子,更多的例子和列表可以在这里找到。(译者Keel注:入门看此文,修行在个人,要想在入门之后懂更多,所以这段话的几个链接迟早是要必看的!不会又要翻译吧...^_^!)

每一个onXXX事件都有效,如onclick,onchange,onsubmit等,都有jQuery等价表示方法(译者Keel注:jQuery不喜欢onXXX,所以都改成了XXX,去掉了on)。其他的一些事件,如ready和hover,也提供了相应的方法。 你可以在Visual jQuery找到全部的事件列表,在Events栏目下.

用这些选择器和事件你已经可以做很多的事情了,但这里有一个更强的好东东!

$(document).ready(function() { $(\ $(this).html( $(this).html() + \ }); });

find() 让你在已经选择的element中作条件查找,因此

$(\就像 $(\一样。each()方法迭代了所有的li,并可以在此基础上作更多的处理。 大部分的方法,如addClass(), 都可以用它们自己的 each() 。在这个例子中, html()用来获取每个li的html文本, 追加一些文字,并将之设置为li的html文本。(译者Keel注:从这个例子可以看到.html()方法是获取对象的html代码,而.html('xxx')是设置'xxx'为对象的html代码)

另一个经常碰到的任务是在没有被jQuery覆盖的DOM元素上call一些方法,想像一个在你用AJAX方式成功提交后的reset: $(document).ready(function() { // use this to reset a single form $(\ $(\ }); });

(译者Keel注:这里作者将form的id也写成了form,源文件有

(译者Keel注:请注意一定要亲自将这些代码写在custom.js中并在

starterkit.html上测试效果才能有所体会!必要时要观察starterkit.html的html代码)

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4