职业IT人-IT人生活圈

 找回密码
 成为会员
搜索
查看: 2032|回复: 26

jQuery教程 大集合

  [复制链接]
只学java 发表于 2011-6-8 17:21 | 显示全部楼层 |阅读模式
本贴内容包括
jQuery 教程
jQuery 简介
jQuery 语法
jQuery 选择器
jQuery 事件
jQuery 效果
jQuery Callback
jQuery HTML
jQuery CSS
jQuery AJAX
jQuery 实例
jQuery 参考手册
jQuery 参考手册
jQuery 选择器
jQuery 事件
jQuery 效果
jQuery 文档操作
jQuery 属性
jQuery CSS
jQuery Ajax
jQuery 遍历
jQuery 数据存储
jQuery 队列控制
jQuery 核心

 楼主| 只学java 发表于 2011-6-8 17:22 | 显示全部楼层
本帖最后由 只学java 于 2011-6-8 17:30 编辑

jQuery 教程

jQuery 是一个 JavaScript 库。

jQuery 极大地简化了 JavaScript 编程。

jQuery 很容易学习。
每一章中用到的实例
  1. <html>
  2. <head>
  3. <script type="text/javascript" src="jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6.   $("p").click(function(){
  7.   $(this).hide();
  8.   });
  9. });
  10. </script>
  11. </head>

  12. <body>
  13. <p>If you click on me, I will disappear.</p>
  14. </body>

  15. </html>
复制代码
您将学到什么
在本教程中,您将通过教程以及许多在线实例,学到如何通过使用 jQuery 应用 JavaScript 效果。

jQuery 是一个“写的更少,但做的更多”的轻量级 JavaScript 库。

基本上,您将学习到如何选取 HTML 元素,以及如何对它们执行类似隐藏、移动以及操作其内容等任务。
您需要具备的基础知识
在您开始学习 jQuery 之前,您应该对以下知识有基本的了解:

&#8226;HTML
&#8226;CSS
&#8226;JavaScript
 楼主| 只学java 发表于 2011-6-8 17:24 | 显示全部楼层
本帖最后由 只学java 于 2011-6-8 17:29 编辑

jQuery 简介


jQuery 库可以通过一行简单的标记被添加到网页中。
jQuery 库 - 特性
jQuery 是一个 JavaScript 函数库。

jQuery 库包含以下特性:

&#8226;HTML 元素选取
&#8226;HTML 元素操作
&#8226;CSS 操作
&#8226;HTML 事件函数
&#8226;JavaScript 特效和动画
&#8226;HTML DOM 遍历和修改
&#8226;AJAX
&#8226;Utilities
向您的页面添加 jQuery 库
jQuery 库位于一个 JavaScript 文件中,其中包含了所有的 jQuery 函数。

可以通过下面的标记把 jQuery 添加到网页中:
  1. <head>
  2. <script type="text/javascript" src="jquery.js"></script>
  3. </head>
复制代码
请注意,<script> 标签应该位于页面的 <head> 部分。
基础 jQuery 实例
下面的例子演示了 jQuery 的 hide() 函数,隐藏了 HTML 文档中所有的 <p> 元素。

实例
  1. <html>
  2. <head>
  3. <script type="text/javascript" src="jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6. $("button").click(function(){
  7. $("p").hide();
  8. });
  9. });
  10. </script>
  11. </head>

  12. <body>
  13. <h2>This is a heading</h2>
  14. <p>This is a paragraph.</p>
  15. <p>This is another paragraph.</p>
  16. <button type="button">Click me</button>
  17. </body>
  18. </html>
复制代码
下载 jQuery
共有两个版本的 jQuery 可供下载:一份是精简过的,另一份是未压缩的(供调试或阅读)。

这两个版本都可从 jQuery.com 下载。
库的替代
Google 和 Microsoft 对 jQuery 的支持都很好。

如果您不愿意在自己的计算机上存放 jQuery 库,那么可以从 Google 或 Microsoft 加载 CDN jQuery 核心文件。

使用 Google 的 CDN
  1. <head>
  2. <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs
  3. /jquery/1.4.0/jquery.min.js"></script>
  4. </head>
复制代码
使用 Microsoft 的 CDN
  1. <head>
  2. <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery
  3. /jquery-1.4.min.js"></script>
  4. </head>
复制代码
 楼主| 只学java 发表于 2011-6-8 17:28 | 显示全部楼层
jQuery 语法

通过 jQuery,您可以选取(查询,query) HTML 元素,并对它们执行“操作”(actions)。
jQuery 语法实例
$(this).hide()
演示 jQuery hide() 函数,隐藏当前的 HTML 元素。
  1. <html>
  2. <head>
  3. <script type="text/javascript" src="/jquery/jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6.   $("button").click(function(){
  7.   $(this).hide();
  8. });
  9. });
  10. </script>
  11. </head>

  12. <body>
  13. <button type="button">Click me</button>
  14. </body>

  15. </html>
复制代码
$("#test").hide()
演示 jQuery hide() 函数,隐藏 id="test" 的元素。
  1. <html>
  2. <head>
  3. <script type="text/javascript" src="/jquery/jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6.   $("button").click(function(){
  7.     $("#test").hide();
  8.   });
  9. });
  10. </script>
  11. </head>

  12. <body>
  13. <h2>This is a heading</h2>
  14. <p>This is a paragraph.</p>
  15. <p id="test">This is another paragraph.</p>
  16. <button type="button">Click me</button>
  17. </body>

  18. </html>
复制代码
$("p").hide()
演示 jQuery hide() 函数,隐藏所有 <p> 元素。
  1. <html>
  2. <head>
  3. <script type="text/javascript" src="/jquery/jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6. $("button").click(function(){
  7. $("p").hide();
  8. });
  9. });
  10. </script>
  11. </head>

  12. <body>
  13. <h2>This is a heading</h2>
  14. <p>This is a paragraph.</p>
  15. <p>This is another paragraph.</p>
  16. <button type="button">Click me</button>
  17. </body>
  18. </html>
复制代码
$(".test").hide()
演示 jQuery hide() 函数,隐藏所有 class="test" 的元素。
  1. <html>
  2. <head>
  3. <script type="text/javascript" src="/jquery/jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function()
  6. {
  7.   $("button").click(function()
  8.   {
  9.   $(".test").hide();
  10.   });
  11. });
  12. </script>
  13. </head>
  14. <body>

  15. <h2 class="test">This is a heading</h2>
  16. <p class="test">This is a paragraph.</p>
  17. <p>This is another paragraph.</p>
  18. <button type="button">Click me</button>

  19. </body>
  20. </html>
复制代码
jQuery 语法jQuery 语法是为 HTML 元素的选取编制的,可以对元素执行某些操作。



基础语法是:$(selector).action()

&#8226;美元符号定义 jQuery
&#8226;选择符(selector)“查询”和“查找” HTML 元素
&#8226;jQuery 的 action() 执行对元素的操作
示例
$(this).hide() - 隐藏当前元素

$("p").hide() - 隐藏所有段落

$("p.test").hide() - 隐藏所有 class="test" 的段落

$("#test").hide() - 隐藏所有 id="test" 的元素

提示:jQuery 使用的语法是 XPath 与 CSS 选择器语法的组合。在本教程接下来的章节,您将学习到更多有关选择器的语法。
文档就绪函数
您也许已经注意到在我们的实例中的所有 jQuery 函数位于一个 document ready 函数中:
  1. $(document).ready(function(){

  2. --- jQuery functions go here ----

  3. });
复制代码
这是为了防止文档在完全加载(就绪)之前运行 jQuery 代码。

如果在文档没有完全加载之前就运行函数,操作可能失败。下面是两个具体的例子:

&#8226;试图隐藏一个不存在的元素
&#8226;获得未完全加载的图像的大小
 楼主| 只学java 发表于 2011-6-8 17:31 | 显示全部楼层
本帖最后由 只学java 于 2011-6-8 17:47 编辑

jQuery 选择器
选择器允许您对元素组或单个元素进行操作。
jQuery 选择器
在前面的章节中,我们展示了一些有关如何选取 HTML 元素的实例。

关键点是学习 jQuery 选择器是如何准确地选取您希望应用效果的元素。

jQuery 元素选择器和属性选择器允许您通过标签名、属性名或内容对 HTML 元素进行选择。

选择器允许您对 HTML 元素组或单个元素进行操作。

在 HTML DOM 术语中:

选择器允许您对 DOM 元素组或单个 DOM 节点进行操作。
jQuery 元素选择器
jQuery 使用 CSS 选择器来选取 HTML 元素。

$("p") 选取 <p> 元素。

$("p.intro") 选取所有 class="intro" 的 <p> 元素。

$("p#demo") 选取 id="demo" 的第一个 <p> 元素。
jQuery 属性选择器
jQuery 使用 XPath 表达式来选择带有给定属性的元素。

$("[href]") 选取所有带有 href 属性的元素。

$("[href='#']") 选取所有带有 href 值等于 "#" 的元素。

$("[href!='#']") 选取所有带有 href 值不等于 "#" 的元素。

$("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的元素。
jQuery CSS 选择器
jQuery CSS 选择器可用于改变 HTML 元素的 CSS 属性。

下面的例子把所有 p 元素的背景颜色更改为红色:

实例
$("p").css("background-color","red");
更多的选择器实例
语法 描述
$(this) 当前 HTML 元素
$("p") 所有 <p> 元素
$("p.intro") 所有 class="intro" 的 <p> 元素
$(".intro") 所有 class="intro" 的元素
$("#intro") id="intro" 的第一个元素
$("ul li:first") 每个 <ul> 的第一个 <li> 元素
$("[href$='.jpg']") 所有带有以 ".jpg" 结尾的属性值的 href 属性
$("div#intro .head") id="intro" 的 <div> 元素中的所有 class="head" 的元素

jQuery 选择器参考:

jQuery 选择器
  1. 选择器 实例 选取
  2. * $("*") 所有元素
  3. #id $("#lastname") id="lastname" 的元素
  4. .class $(".intro") 所有 class="intro" 的元素
  5. element $("p") 所有 <p> 元素
  6. .class.class $(".intro.demo") 所有 class="intro" 且 class="demo" 的元素
  7.       
  8. :first $("p:first") 第一个 <p> 元素
  9. :last $("p:last") 最后一个 <p> 元素
  10. :even $("tr:even") 所有偶数 <tr> 元素
  11. :odd $("tr:odd") 所有奇数 <tr> 元素
  12.       
  13. :eq(index) $("ul li:eq(3)") 列表中的第四个元素(index 从 0 开始)
  14. :gt(no) $("ul li:gt(3)") 列出 index 大于 3 的元素
  15. :lt(no) $("ul li:lt(3)") 列出 index 小于 3 的元素
  16. :not(selector) $("input:not(:empty)") 所有不为空的 input 元素
  17.       
  18. :header $(":header") 所有标题元素 <h1> - <h6>
  19. :animated   所有动画元素
  20.       
  21. :contains(text) $(":contains('W3School')") 包含指定字符串的所有元素
  22. :empty $(":empty") 无子(元素)节点的所有元素
  23. :hidden $("p:hidden") 所有隐藏的 <p> 元素
  24. :visible $("table:visible") 所有可见的表格
  25.       
  26. s1,s2,s3 $("th,td,.intro") 所有带有匹配选择的元素
  27.       
  28. [attribute] $("[href]") 所有带有 href 属性的元素
  29. [attribute=value] $("[href='#']") 所有 href 属性的值等于 "#" 的元素
  30. [attribute!=value] $("[href!='#']") 所有 href 属性的值不等于 "#" 的元素
  31. [attribute$=value] $("[href$='.jpg']") 所有 href 属性的值包含 ".jpg" 的元素
  32.       
  33. :input $(":input") 所有 <input> 元素
  34. :text $(":text") 所有 type="text" 的 <input> 元素
  35. :password $(":password") 所有 type="password" 的 <input> 元素
  36. :radio $(":radio") 所有 type="radio" 的 <input> 元素
  37. :checkbox $(":checkbox") 所有 type="checkbox" 的 <input> 元素
  38. :submit $(":submit") 所有 type="submit" 的 <input> 元素
  39. :reset $(":reset") 所有 type="reset" 的 <input> 元素
  40. :button $(":button") 所有 type="button" 的 <input> 元素
  41. :image $(":image") 所有 type="image" 的 <input> 元素
  42. :file $(":file") 所有 type="file" 的 <input> 元素
  43.       
  44. :enabled $(":enabled") 所有激活的 input 元素
  45. :disabled $(":disabled") 所有禁用的 input 元素
  46. :selected $(":selected") 所有被选取的 input 元素
  47. :checked $(":checked") 所有被选中的 input 元素
复制代码
 楼主| 只学java 发表于 2011-6-8 17:38 | 显示全部楼层
本帖最后由 只学java 于 2011-6-8 17:47 编辑

jQuery 事件

是为事件处理特别设计的。
jQuery 事件函数
jQuery 事件处理方法是 jQuery 中的核心函数。

事件处理程序指的是当 HTML 中发生某些事件时所调用的方法。术语由事件“触发”(或“激发”)经常会被使用。

通常会把 jQuery 代码放到 <head>部分的事件处理方法中:

实例
  1. <html>
  2. <head>
  3. <script type="text/javascript" src="jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6.   $("button").click(function(){
  7.     $("p").hide();
  8.   });
  9. });
  10. </script>
  11. </head>

  12. <body>
  13. <h2>This is a heading</h2>
  14. <p>This is a paragraph.</p>
  15. <p>This is another paragraph.</p>
  16. <button>Click me</button>
  17. </body>

  18. </html>
复制代码
在上面的例子中,当按钮的点击事件被触发时会调用一个函数:

$("button").click(function() {..some code... } )该方法隐藏所有 <p> 元素:

$("p").hide();单独文件中的函数
如果您的网站包含许多页面,并且您希望您的 jQuery 函数易于维护,那么请把您的 jQuery 函数放到独立的 .js 文件中。

当我们在教程中演示 jQuery 时,会将函数直接添加到 <head> 部分中。不过,把它们放到一个单独的文件中会更好,就像这样(通过 src 属性来引用文件):

实例
  1. <head>
  2. <script type="text/javascript" src="jquery.js"></script>
  3. <script type="text/javascript" src="my_jquery_functions.js"></script>
  4. </head>
复制代码
jQuery 名称冲突
jQuery 使用 $ 符号作为 jQuery 的简介方式。

某些其他 JavaScript 库中的函数(比如 Prototype)同样使用 $ 符号。

jQuery 使用名为 noConflict() 的方法来解决该问题。

var jq=jQuery.noConflict(),帮助您使用自己的名称(比如 jq)来代替 $ 符号。


结论
由于 jQuery 是为处理 HTML 事件而特别设计的,那么当您遵循以下原则时,您的代码会更恰当且更易维护:

&#8226;把所有 jQuery 代码置于事件处理函数中
&#8226;把所有事件处理函数置于文档就绪事件处理器中
&#8226;把 jQuery 代码置于单独的 .js 文件中
&#8226;如果存在名称冲突,则重命名 jQuery 库
jQuery 事件
下面是 jQuery 中事件方法的一些例子:

Event 函数 绑定函数至
$(document).ready(function) 将函数绑定到文档的就绪事件(当文档完成加载时)
$(selector).click(function) 触发或将函数绑定到被选元素的点击事件
$(selector).dblclick(function) 触发或将函数绑定到被选元素的双击事件
$(selector).focus(function) 触发或将函数绑定到被选元素的获得焦点事件
$(selector).mouseover(function) 触发或将函数绑定到被选元素的鼠标悬停事件

jQuery 事件参考:
  1. jQuery 事件方法
  2. 事件方法会触发匹配元素的事件,或将函数绑定到所有匹配元素的某个事件。

  3. 触发实例:

  4. $("button#demo").click()上面的例子将触发 id="demo" 的 button 元素的 click 事件。

  5. 绑定实例:

  6. $("button#demo").click(function(){$("img").hide()})上面的例子会在点击 id="demo" 的按钮时隐藏所有图像。

  7. 方法 描述
  8. bind() 向匹配元素附加一个或更多事件处理器
  9. blur() 触发、或将函数绑定到指定元素的 blur 事件
  10. change() 触发、或将函数绑定到指定元素的 change 事件
  11. click() 触发、或将函数绑定到指定元素的 click 事件
  12. dblclick() 触发、或将函数绑定到指定元素的 double click 事件
  13. delegate() 向匹配元素的当前或未来的子元素附加一个或多个事件处理器
  14. die() 移除所有通过 live() 函数添加的事件处理程序。
  15. error() 触发、或将函数绑定到指定元素的 error 事件
  16. event.isDefaultPrevented() 返回 event 对象上是否调用了 event.preventDefault()。
  17. event.pageX 相对于文档左边缘的鼠标位置。
  18. event.pageY 相对于文档上边缘的鼠标位置。
  19. event.preventDefault() 阻止事件的默认动作。
  20. event.result 包含由被指定事件触发的事件处理器返回的最后一个值。
  21. event.target 触发事件的 DOM 元素。
  22. event.timeStamp 该属性返回从 1970 年 1 月 1 日到事件发生时的毫秒数。
  23. event.type 描述事件的类型。
  24. event.which 指示按了哪个键或按钮。
  25. focus() 触发、或将函数绑定到指定元素的 focus 事件
  26. keydown() 触发、或将函数绑定到指定元素的 key down 事件
  27. keypress() 触发、或将函数绑定到指定元素的 key press 事件
  28. keyup() 触发、或将函数绑定到指定元素的 key up 事件
  29. live() 触发、或将函数绑定到指定元素的 load 事件
  30. load() 触发、或将函数绑定到指定元素的 load 事件
  31. mousedown() 触发、或将函数绑定到指定元素的 mouse down 事件
  32. mouseenter() 触发、或将函数绑定到指定元素的 mouse enter 事件
  33. mouseleave() 触发、或将函数绑定到指定元素的 mouse leave 事件
  34. mousemove() 触发、或将函数绑定到指定元素的 mouse move 事件
  35. mouseout() 触发、或将函数绑定到指定元素的 mouse out 事件
  36. mouseover() 触发、或将函数绑定到指定元素的 mouse over 事件
  37. mouseup() 触发、或将函数绑定到指定元素的 mouse up 事件
  38. one() 向匹配元素添加事件处理器。每个元素只能触发一次该处理器。
  39. ready() 文档就绪事件(当 HTML 文档就绪可用时)
  40. resize() 触发、或将函数绑定到指定元素的 resize 事件
  41. scroll() 触发、或将函数绑定到指定元素的 scroll 事件
  42. select() 触发、或将函数绑定到指定元素的 select 事件
  43. submit() 触发、或将函数绑定到指定元素的 submit 事件
  44. toggle() 绑定两个或多个事件处理器函数,当发生轮流的 click 事件时执行。
  45. trigger() 所有匹配元素的指定事件
  46. triggerHandler() 第一个被匹配元素的指定事件
  47. unbind() 从匹配元素移除一个被添加的事件处理器
  48. undelegate() 从匹配元素移除一个被添加的事件处理器,现在或将来
  49. unload() 触发、或将函数绑定到指定元素的 unload 事件
复制代码
 楼主| 只学java 发表于 2011-6-8 17:44 | 显示全部楼层
本帖最后由 只学java 于 2011-6-8 17:47 编辑

jQuery 效果

PagejQuery 可以创建隐藏、显示、切换、滑动以及自定义动画等效果。
亲自试一试
请试一下这个 jQuery 效果:

实例
jQuery hide()
演示简单的 jQuery hide() 函数。
  1. <html>

  2. <head>
  3. <script type="text/javascript" src="/jquery/jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6.   $("p").click(function(){
  7.   $(this).hide();
  8.   });
  9. });
  10. </script>
  11. </head>

  12. <body>
  13. <p>If you click on me, I will disappear.</p>
  14. </body>

  15. </html>
复制代码
jQuery hide()
另一个 hide() 演示。如何隐藏部分文本。
  1. <html>
  2. <head>
  3. <script type="text/javascript" src="/jquery/jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6. $(".ex .hide").click(function(){
  7. $(this).parents(".ex").hide("slow");
  8. });
  9. });
  10. </script>
  11. <style type="text/css">
  12. div.ex
  13. {
  14. background-color:#e5eecc;
  15. padding:7px;
  16. border:solid 1px #c3c3c3;
  17. }
  18. </style>
  19. </head>

  20. <body>

  21. <h3>Island Trading</h3>
  22. <div class="ex">
  23. <button class="hide" type="button">Hide me</button>
  24. <p>Contact: Helen Bennett<br />
  25. Garden House Crowther Way<br />
  26. London</p>
  27. </div>

  28. <h3>Paris Trading</h3>
  29. <div class="ex">
  30. <button class="hide" type="button">Hide me</button>
  31. <p>Contact: Marie Bertrand<br />
  32. 265, Boulevard Charonne<br />
  33. Paris</p>
  34. </div>

  35. </body>
  36. </html>
复制代码
jQuery slideToggle()
演示简单的 slide panel 效果。
  1. <html>
  2. <head>

  3. <script type="text/javascript" src="/jquery/jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6. $(".flip").click(function(){
  7.     $(".panel").slideToggle("slow");
  8.   });
  9. });
  10. </script>

  11. <style type="text/css">
  12. div.panel,p.flip
  13. {
  14. margin:0px;
  15. padding:5px;
  16. text-align:center;
  17. background:#e5eecc;
  18. border:solid 1px #c3c3c3;
  19. }
  20. div.panel
  21. {
  22. height:120px;
  23. display:none;
  24. }
  25. </style>
  26. </head>

  27. <body>

  28. <div class="panel">
  29. <p>W3School - 领先的 Web 技术教程站点</p>
  30. <p>在 W3School,你可以找到你所需要的所有网站建设教程。</p>
  31. </div>

  32. <p class="flip">请点击这里</p>

  33. </body>
  34. </html>
复制代码
jQuery fadeTo()
演示简单的 jQuery fadeTo() 函数。
  1. <html>
  2. <head>
  3. <script type="text/javascript" src="/jquery/jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6.   $("button").click(function(){
  7.   $("div").fadeTo("slow",0.25);
  8.   });
  9. });
  10. </script>
  11. </head>

  12. <body>
  13. <div id="test" style="background:yellow;width:300px;height:300px">
  14. <button type="button">点击这里查看淡出效果</button>
  15. </div>

  16. </body>

  17. </html>
复制代码
jQuery animate()
演示简单的 jQuery animate() 函数。jQuery 隐藏和显示
  1. <html>
  2. <head>
  3. <script type="text/javascript" src="/jquery/jquery.js"></script>
  4. <script type="text/javascript">
  5. $(document).ready(function(){
  6.   $("#start").click(function(){
  7.   $("#box").animate({height:300},"slow");
  8.   $("#box").animate({width:300},"slow");
  9.   $("#box").animate({height:100},"slow");
  10.   $("#box").animate({width:100},"slow");
  11.   });
  12. });
  13. </script>
  14. </head>

  15. <body>

  16. <p><a href="#" id="start">Start Animation</a></p>

  17. <div id="box"
  18. style="background:#98bf21;height:100px;width:100px;position:relative">
  19. </div>

  20. </body>
  21. </html>
复制代码
通过 hide() 和 show() 两个函数,jQuery 支持对 HTML 元素的隐藏和显示:

实例
  1. $("#hide").click(function(){
  2. $("p").hide();
  3. });
  4. $("#show").click(function(){
  5. $("p").show();
  6. });
复制代码
hide() 和 show() 都可以设置两个可选参数:speed 和 callback。

语法:
$(selector).hide(speed,callback)

$(selector).show(speed,callback)
speed 参数规定显示或隐藏的速度。可以设置这些值:"slow", "fast", "normal" 或毫秒。

callback 参数是在 hide 或 show 函数完成之后被执行的函数名称。您将在本教程下面的章节学习更多有关 callback 参数的知识。

实例
  1. $("button").click(function(){
  2. $("p").hide(1000);
  3. });
复制代码
jQuery 切换
jQuery toggle() 函数使用 show() 或 hide() 函数来切换 HTML 元素的可见状态。

隐藏显示的元素,显示隐藏的元素。

语法:
$(selector).toggle(speed,callback)speed 参数可以设置这些值:"slow", "fast", "normal" 或 毫秒。

实例
  1. $("button").click(function(){
  2. $("p").toggle();
  3. });
复制代码
callback 参数是在该函数完成之后被执行的函数名称。您将在本教程下面的章节学习更多有关 callback 参数的知识。
jQuery 滑动函数 - slideDown, slideUp, slideToggle
jQuery 拥有以下滑动函数:

$(selector).slideDown(speed,callback)

$(selector).slideUp(speed,callback)

$(selector).slideToggle(speed,callback)
speed 参数可以设置这些值:"slow", "fast", "normal" 或毫秒。

callback 参数是在该函数完成之后被执行的函数名称。您将在本教程下面的章节学习更多有关 callback 参数的知识。

slideDown() 实例
  1. $(".flip").click(function(){
  2. $(".panel").slideDown();
  3. });
复制代码
slideUp() 实例
  1. $(".flip").click(function(){
  2. $(".panel").slideUp()
  3. })
复制代码
slideToggle() 实例
  1. $(".flip").click(function(){
  2. $(".panel").slideToggle();
  3. });
复制代码
jQuery Fade 函数 - fadeIn(), fadeOut(), fadeTo()
jQuery 拥有以下 fade 函数:

$(selector).fadeIn(speed,callback)

$(selector).fadeOut(speed,callback)

$(selector).fadeTo(speed,opacity,callback)
speed 参数可以设置这些值:"slow", "fast", "normal" 或 毫秒。

fadeTo() 函数中的 opacity 参数规定减弱到给定的不透明度。

callback 参数是在该函数完成之后被执行的函数名称。您将在本教程下面的章节学习更多有关 callback 参数的知识。

fadeTo() 实例
  1. $("button").click(function(){
  2. $("div").fadeTo("slow",0.25);
  3. });
复制代码
fadeOut() 实例
  1. $("button").click(function(){
  2. $("div").fadeOut(4000);
  3. });
复制代码
jQuery 自定义动画
jQuery 函数创建自定义动画的语法:

$(selector).animate({params},[duration],[easing],[callback])关键的参数是 params。它定义产生动画的 CSS 属性。可以同时设置多个此类属性:

animate({width:"70%",opacity:0.4,marginLeft:"0.6in",fontSize:"3em"});第二个参数是 duration。它定义用来应用到动画的时间。它设置的值是:"slow", "fast", "normal" 或毫秒。

实例 1
  1. <script type="text/javascript">
  2. $(document).ready(function(){
  3. $("#start").click(function(){
  4. $("#box").animate({height:300},"slow");
  5. $("#box").animate({width:300},"slow");
  6. $("#box").animate({height:100},"slow");
  7. $("#box").animate({width:100},"slow");
  8. });
  9. });
  10. </script>
复制代码
实例 2
  1. <script type="text/javascript">
  2. $(document).ready(function(){
  3. $("#start").click(function(){
  4. $("#box").animate({left:"100px"},"slow");
  5. $("#box").animate({fontSize:"3em"},"slow");
  6. });
  7. });
  8. </script>
复制代码
HTML 元素默认是静态定位,且无法移动。

如需使元素可以移动,请把 CSS 的 position 设置为 relative 或 absolute。
jQuery 效果 - 来自本页
函数 描述
$(selector).hide() 隐藏被选元素
$(selector).show() 显示被选元素
$(selector).toggle() 切换(在隐藏与显示之间)被选元素
$(selector).slideDown() 向下滑动(显示)被选元素
$(selector).slideUp() 向上滑动(隐藏)被选元素
$(selector).slideToggle() 对被选元素切换向上滑动和向下滑动
$(selector).fadeIn() 淡入被选元素
$(selector).fadeOut() 淡出被选元素
$(selector).fadeTo() 把被选元素淡出为给定的不透明度
$(selector).animate() 对被选元素执行自定义动画

jQuery Effect 参考手册:
  1. jQuery 效果函数
  2. 方法 描述
  3. animate() 对被选元素应用“自定义”的动画
  4. clearQueue() 对被选元素移除所有排队的函数(仍未运行的)
  5. delay() 对被选元素的所有排队函数(仍未运行)设置延迟
  6. dequeue() 运行被选元素的下一个排队函数
  7. fadeIn() 淡入被选元素至完全不透明
  8. fadeOut() 淡出被选元素至完全不透明
  9. fadeTo() 把被选元素减弱至给定的不透明度
  10. hide() 隐藏被选的元素
  11. queue() 显示被选元素的排队函数
  12. show() 显示被选的元素
  13. slideDown() 通过调整高度来滑动显示被选元素
  14. slideToggle() 对被选元素进行滑动隐藏和滑动显示的切换
  15. slideUp() 通过调整高度来滑动隐藏被选元素
  16. stop() 停止在被选元素上运行动画
  17. toggle() 对被选元素进行隐藏和显示的切换
复制代码
 楼主| 只学java 发表于 2011-6-8 17:46 | 显示全部楼层
本帖最后由 只学java 于 2011-6-8 17:48 编辑

jQuery Callback 函数

Callback 函数在当前动画 100% 完成之后执行。
jQuery 动画的问题
许多 jQuery 函数涉及动画。这些函数也许会将 speed 或 duration 作为可选参数。

例子:$("p").hide("slow")

speed 或 duration 参数可以设置许多不同的值,比如 "slow", "fast", "normal" 或毫秒。

实例
  1. $("button").click(function(){
  2. $("p").hide(1000);
  3. });
复制代码
由于 JavaScript 语句(指令)是逐一执行的 - 按照次序,动画之后的语句可能会产生错误或页面冲突,因为动画还没有完成。

为了避免这个情况,您可以以参数的形式添加 Callback 函数。
jQuery Callback 函数
当动画 100% 完成后,即调用 Callback 函数。

典型的语法:
$(selector).hide(speed,callback)callback 参数是一个在 hide 操作完成后被执行的函数。

错误(没有 callback)
  1. $("p").hide(1000);
  2. alert("The paragraph is now hidden");
复制代码
正确(有 callback)
  1. $("p").hide(1000,function(){
  2. alert("The paragraph is now hidden");
  3. });
复制代码
结论:如果您希望在一个涉及动画的函数之后来执行语句,请使用 callback 函数。
 楼主| 只学java 发表于 2011-6-8 17:50 | 显示全部楼层
jQuery HTML 操作
jQuery 包含很多供改变和操作 HTML 的强大函数。
改变 HTML 内容
语法
$(selector).html(content)html() 函数改变所匹配的 HTML 元素的内容(innerHTML)。

实例
$("p").html("www.51myit.com");
添加 HTML 内容
语法
$(selector).append(content)append() 函数向所匹配的 HTML 元素内部追加内容。

语法
$(selector).prepend(content)prepend() 函数向所匹配的 HTML 元素内部预置(Prepend)内容。

实例
$("p").append(" www.51myit.com");
语法
$(selector).after(content)after() 函数在所有匹配的元素之后插入 HTML 内容。

语法
$(selector).before(content)before() 函数在所有匹配的元素之前插入 HTML 内容。

实例
$("p").after(" www.51myit.com.");
jQuery HTML 操作 - 来自本页
函数 描述
$(selector).html(content) 改变被选元素的(内部)HTML
$(selector).append(content) 向被选元素的(内部)HTML 追加内容
$(selector).prepend(content) 向被选元素的(内部)HTML “预置”(Prepend)内容
$(selector).after(content) 在被选元素之后添加 HTML
$(selector).before(content) 在被选元素之前添加 HTML

jQuery HTML 操作参考手册:
  1. jQuery 文档操作方法
  2. 这些方法对于 XML 文档和 HTML 文档均是适用的,除了:html()。

  3. 方法 描述
  4. addClass() 向匹配的元素添加指定的类名。
  5. after() 在匹配的元素之后插入内容。
  6. append() 向匹配的元素内部追加内容。
  7. appendTo() 向匹配的元素内部追加内容。
  8. attr() 设置或返回匹配元素的属性和值。
  9. before() 在每个匹配的元素之前插入内容。
  10. clone() 创建匹配元素集合的副本。
  11. detach() 从 DOM 中移除匹配元素集合。
  12. empty() 删除匹配的元素集合中所有的子节点。
  13. hasClass() 检查匹配的元素是否拥有指定的类。
  14. html() 设置或返回匹配的元素集合中的 HTML 内容。
  15. insertAfter() 把匹配的元素插入到另一个指定的元素集合的后面。
  16. insertBefore() 把匹配的元素插入到另一个指定的元素集合的前面。
  17. prepend() 向每个匹配的元素内部前置内容。
  18. prependTo() 向每个匹配的元素内部前置内容。
  19. remove() 移除所有匹配的元素。
  20. removeAttr() 从所有匹配的元素中移除指定的属性。
  21. removeClass() 从所有匹配的元素中删除全部或者指定的类。
  22. replaceAll() 用匹配的元素替换所有匹配到的元素。
  23. replaceWith() 用新内容替换匹配的元素。
  24. text() 设置或返回匹配元素的内容。
  25. toggleClass() 从匹配的元素中添加或删除一个类。
  26. unwrap() 移除并替换指定元素的父元素。
  27. val() 设置或返回匹配元素的值。
  28. wrap() 把匹配的元素用指定的内容或元素包裹起来。
  29. wrapAll() 把所有匹配的元素用指定的内容或元素包裹起来。
  30. wrapinner() 将每一个匹配的元素的子内容用指定的内容或元素包裹起来。
复制代码
 楼主| 只学java 发表于 2011-6-8 17:53 | 显示全部楼层
本帖最后由 只学java 于 2011-6-8 17:54 编辑

jQuery CSS 操作
jQuery 拥有三种用于 CSS 操作的重要函数:

&#8226;$(selector).css(name,value)
&#8226;$(selector).css({properties})
&#8226;$(selector).css(name)
CSS 操作实例
函数 css(name,value) 为所有匹配元素的给定 CSS 属性设置值:

实例
$(selector).css(name,value)
$("p").css("background-color","red");

函数 css({properties}) 同时为所有匹配元素的一系列 CSS 属性设置值:

实例
$(selector).css({properties})
$("p").css({"background-color":"red","font-size":"200%"});

函数 css(name) 返回指定的 CSS 属性的值:

实例
$(selector).css(name)
$(this).css("background-color");

jQuery Size 操作
jQuery 拥有两种用于尺寸操作的重要函数:

&#8226;$(selector).height(value)
&#8226;$(selector).width(value)
Size 操作实例
函数 height(value) 设置所有匹配元素的高度:

实例
$(selector).height(value)
$("#id100").height("200px");


函数 width(value) 设置所有匹配元素的宽度:

实例
$(selector).width(value)
$("#id200").width("300px");

jQuery CSS 函数 - 来自本页
CSS 属性 描述
$(selector).css(name,value) 为匹配元素设置样式属性的值
$(selector).css({properties}) 为匹配元素设置多个样式属性
$(selector).css(name) 获得第一个匹配元素的样式属性值
$(selector).height(value) 设置匹配元素的高度
$(selector).width(value) 设置匹配元素的宽度
  1. jQuery CSS 操作函数
  2. 下面列出的这些方法设置或返回元素的 CSS 相关属性。

  3. CSS 属性 描述
  4. css() 设置或返回匹配元素的样式属性。
  5. height() 设置或返回匹配元素的高度。
  6. offset() 返回第一个匹配元素相对于文档的位置。
  7. offsetParent() 返回最近的定位祖先元素。
  8. position() 返回第一个匹配元素相对于父元素的位置。
  9. scrollLeft() 设置或返回匹配元素相对滚动条顶部的偏移。
  10. scrollTop() 设置或返回匹配元素相对滚动条左侧的偏移。
  11. width() 设置或返回匹配元素的宽度。
复制代码
参考学习:css教程
 楼主| 只学java 发表于 2011-6-8 17:56 | 显示全部楼层
jQuery AJAX 函数

jQuery 拥有供 AJAX 开发的丰富函数(方法)库。


什么是 AJAX?
AJAX = Asynchronous JavaScript and XML.

AJAX 是一种创建快速动态网页的技术。

AJAX 通过在后台与服务器交换少量数据的方式,允许网页进行异步更新。这意味着有可能在不重载整个页面的情况下,对网页的一部分进行更新。

您可以在我们的 AJAX 教程 中学习更多有关 AJAX 的知识。
AJAX 和 jQuery
jQuery 提供了用于 AJAX 开发的丰富函数(方法)库。

通过 jQuery AJAX,使用 HTTP Get 和 HTTP Post,您都可以从远程服务器请求 TXT、HTML、XML 或 JSON。

而且您可以直接把远程数据载入网页的被选 HTML 元素中!
写的更少,做的更多
jQuery 的 load 函数是一种简单的(但很强大的)AJAX 函数。它的语法如下:

$(selector).load(url,data,callback)请使用 selector 来定义要改变的 HTML 元素,使用 url 参数来指定数据的 web 地址。



只有当您希望向服务器发送数据时,才需要使用 data 参数。只有当您需要在执行完毕之后触发一个函数时,您才需要使用 callback 参数。
Low Level AJAX
$.ajax(options) 是低层级 AJAX 函数的语法。

$.ajax 提供了比高层级函数更多的功能,但是同时也更难使用。

option 参数设置的是 name|value 对,定义 url 数据、密码、数据类型、过滤器、字符集、超时以及错误函数。

jQuery AJAX 请求
请求 描述
$(selector).load(url,data,callback) 把远程数据加载到被选的元素中
$.ajax(options) 把远程数据加载到 XMLHttpRequest 对象中
$.get(url,data,callback,type) 使用 HTTP GET 来加载远程数据
$.post(url,data,callback,type) 使用 HTTP POST 来加载远程数据
$.getJSON(url,data,callback) 使用 HTTP GET 来加载远程 JSON 数据
$.getScript(url,callback) 加载并执行远程的 JavaScript 文件

(url) 被加载的数据的 URL(地址)

(data) 发送到服务器的数据的键/值对象

(callback) 当数据被加载时,所执行的函数

(type) 被返回的数据的类型 (html,xml,json,jasonp,script,text)

(options) 完整 AJAX 请求的所有键/值对选项

jQuery AJAX 参考手册:
jQuery Ajax 操作函数
jQuery 库拥有完整的 Ajax 兼容套件。其中的函数和方法允许我们在不刷新浏览器的情况下从服务器加载数据。
  1. 函数 描述
  2. jQuery.ajax() 执行异步 HTTP (Ajax) 请求。
  3. .ajaxComplete() 当 Ajax 请求完成时注册要调用的处理程序。这是一个 Ajax 事件。
  4. .ajaxError() 当 Ajax 请求完成且出现错误时注册要调用的处理程序。这是一个 Ajax 事件。
  5. .ajaxSend() 在 Ajax 请求发送之前显示一条消息。
  6. jQuery.ajaxSetup() 设置将来的 Ajax 请求的默认值。
  7. .ajaxStart() 当首个 Ajax 请求完成开始时注册要调用的处理程序。这是一个 Ajax 事件。
  8. .ajaxStop() 当所有 Ajax 请求完成时注册要调用的处理程序。这是一个 Ajax 事件。
  9. .ajaxSuccess() 当 Ajax 请求成功完成时显示一条消息。
  10. jQuery.get() 使用 HTTP GET 请求从服务器加载数据。
  11. jQuery.getJSON() 使用 HTTP GET 请求从服务器加载 JSON 编码数据。
  12. jQuery.getScript() 使用 HTTP GET 请求从服务器加载 JavaScript 文件,然后执行该文件。
  13. .load() 从服务器加载数据,然后把返回到 HTML 放入匹配元素。
  14. jQuery.param() 创建数组或对象的序列化表示,适合在 URL 查询字符串或 Ajax 请求中使用。
  15. jQuery.post() 使用 HTTP POST 请求从服务器加载数据。
  16. .serialize() 将表单内容序列化为字符串。
  17. .serializeArray() 序列化表单元素,返回 JSON 数据结构数据。
复制代码
 楼主| 只学java 发表于 2011-6-8 17:59 | 显示全部楼层
jQuery 遍历函数

jQuery 遍历函数包括了用于筛选、查找和串联元素的方法。

函数 描述
.add() 将元素添加到匹配元素的集合中。
.andSelf() 把堆栈中之前的元素集添加到当前集合中。
.children() 获得匹配元素集合中每个元素的所有子元素。
.closest() 从元素本身开始,逐级向上级元素匹配,并返回最先匹配的祖先元素。
.contents() 获得匹配元素集合中每个元素的子元素,包括文本和注释节点。
.each() 对 jQuery 对象进行迭代,为每个匹配元素执行函数。
.end() 结束当前链中最近的一次筛选操作,并将匹配元素集合返回到前一次的状态。
.eq() 将匹配元素集合缩减为位于指定索引的新元素。
.filter() 将匹配元素集合缩减为匹配选择器或匹配函数返回值的新元素。
.find() 获得当前匹配元素集合中每个元素的后代,由选择器进行筛选。
.first() 将匹配元素集合缩减为集合中的第一个元素。
.has() 将匹配元素集合缩减为包含特定元素的后代的集合。
.is() 根据选择器检查当前的匹配元素集合,如果存在至少一个匹配元素,则返回 true。
.last() 将匹配元素集合缩减为集合中的最后一个元素。
.map() 把当前匹配集合中的每个元素传递给一个函数,产生包含返回值的新的 jQuery 对象。
.next() 获得匹配元素集合中每个元素紧邻的同辈元素。
.nextAll() 获得匹配元素集合中每个元素之后的所有同辈元素,由选择器进行筛选(可选)。
.nextUntil() 获得每个元素之后所有的同辈元素,直到遇到匹配选择器的元素为止。
.not() 从匹配元素集合中删除元素。
.offsetParent() 获得用于定位的第一个父元素。
.parent() 获得当前匹配元素集合中每个元素的父元素,由选择器筛选(可选)。
.parentsUntil() 获得当前匹配元素集合中每个元素的祖先元素,直到遇到匹配选择器的元素为止。
.prev() 获得匹配元素集合中每个元素紧邻的前一个同辈元素,由选择器筛选(可选)。
.prevAll() 获得匹配元素集合中每个元素之前的所有同辈元素,由选择器进行筛选(可选)。
.prevUntil() 获得每个元素之前所有的同辈元素,直到遇到匹配选择器的元素为止。
.siblings() 获得匹配元素集合中所有元素的同辈元素,由选择器筛选(可选)。
.slice() 将匹配元素集合缩减为指定范围的子集。
 楼主| 只学java 发表于 2011-6-8 18:00 | 显示全部楼层
jQuery 数据存储函数
这些方法允许我们将指定的 DOM 元素与任意数据相关联。

函数 描述
.data() 存储与匹配元素相关的任意数据。
jQuery.data() 存储与指定元素相关的任意数据。
.removeData() 移除之前存放的数据。
jQuery.removeData() 移除之前存放的数据。
 楼主| 只学java 发表于 2011-6-8 18:01 | 显示全部楼层
jQuery 队列控制函数

函数 描述
.clearQueue() 从队列中删除所有未运行的项目。
.dequeue() 从队列最前端移除一个队列函数,并执行它。
jQuery.dequeue() 从队列最前端移除一个队列函数,并执行它。
.queue() 显示或操作匹配元素所执行函数的队列。
jQuery.queue() 显示或操作匹配元素所执行函数的队列。
 楼主| 只学java 发表于 2011-6-8 18:01 | 显示全部楼层
本帖最后由 只学java 于 2011-6-8 18:01 编辑

jQuery 核心函数

函数 描述
jQuery() 接受一个字符串,其中包含了用于匹配元素集合的 CSS 选择器。
jQuery.noConflict() 运行这个函数将变量 $ 的控制权让渡给第一个实现它的那个库。
楠楠 发表于 2011-7-19 10:48 | 显示全部楼层
我想骂我自己
yoyo 发表于 2011-7-22 10:37 | 显示全部楼层
不是吧~~~~~
fossil 发表于 2011-7-22 10:37 | 显示全部楼层
此贴有意思~  
话说我当年 发表于 2011-7-30 10:29 | 显示全部楼层
来电来函..欢迎洽购...
愚人 发表于 2011-7-30 10:30 | 显示全部楼层
晚安 别让小嫁再郁闷了 -
曾经的小孩 发表于 2011-8-3 12:12 | 显示全部楼层
真~~~~~~~~~~
已经来了吗 发表于 2011-8-3 12:12 | 显示全部楼层
晕。。。。怎么没早看到呢。。。。。。。。。
月上萧萧 发表于 2011-8-3 12:12 | 显示全部楼层
不是吧~~~~~
找不到我 发表于 2011-8-4 12:02 | 显示全部楼层
哈哈~~~相比现在没人在了 吧 哈哈~~~~
hxy 发表于 2011-8-5 11:51 | 显示全部楼层
非常感谢楼主,楼主万岁万岁万万岁!
fl 发表于 2011-8-5 11:51 | 显示全部楼层
IT柏拉图倒真的是...
无处不在 发表于 2011-8-15 09:19 | 显示全部楼层
扯淡啊,感觉你在开玩笑啊
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

QQ|手机版|小黑屋|网站帮助|职业IT人-IT人生活圈 ( 粤ICP备12053935号-1 )|网站地图
本站文章版权归原发布者及原出处所有。内容为作者个人观点,并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是信息平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽造成漏登,请及时联系我们,我们将根据著作权人的要求立即更正或者删除有关内容。

GMT+8, 2024-4-29 22:11 , Processed in 0.172859 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表