jQuery基础总结3

jQuery基础总结3
 

jQuery 构造器

构造器是jQuery框架的内核(core),它犹如JavaScript语言的构造函数(Function) 。构造器由jQuery()函数(可简写为$())负责实现,该函数是整个jQuery框架的核心,jQuery中的一切操作都构建于这个函数之上。jQuery()函数可以接收四种类型的参数:

  • jQuery(expression,[context]):根据 CSS 选择器字符串在页面中匹配一组元素,或者利用context参数指定匹配的范围。
  • jQuery(html):根据HTML标记字符串,动态创建由jQuery对象包装的DOM元素。
  • jQuery(elements):将一个或多个DOM对象转化为jQuery对象。
  • jQuery(callback):$(document).ready()的简写。允许绑定一个在 DOM 文档加载完毕之后执行的函数。

jQuery对象与DOM对象是两个不同的概念,它们不能够相互调用。jQuery对象只能够使用 jQuery定义的方法和属性;而 DOM 也只能够使用 DOM 组件和JavaScript 定义的方法和属性。因此,在调用对象的方法和属性时,应该清楚它属于什么对象。对于普通的 DOM 对象来说,如果要转换为  jQuery  对象,则使用  jQuery()函数即可。当然也可以把 jQuery对象转换为DOM 对象,由于 jQuery对象实际上就是一个 JavaScript 数据集合,如果要把jQuery对象转换为DOM对象,则必须从对象中选取其中的某一项元素,即通过索引选取其中一个元素对象即可。除了使用集合索引值把jQuery对象转换为DOM对象外, 还可以使用jQuery的get()获取对象内指定索引的元素。

jQuery 基本用法

jQuery对象是一个集合,要访问这个集合,除了使用索引值以外,还可以使用jQuery定义的几个方法和属性。

  • each(callback): each(callback)方法实际上是 JavaScript 集合遍历的一种功能包装,它以  jQuery 对象内的集合元素为遍历对象,并循环执行指定的函数。在循环体内的函数中,this  关键字都会自动指向当前元素,且会自动向函数体内传递元素的索引值(从0开始)。如果函数中途返回false,则将停止循环。如果每次执行函数都返回  true,则将自动循环执
    行函数,直到遍历结束。
  • size()和length: size()方法能够返回jQuery对象中元素的个数,而length属性与size()方法功能相同。
  • get(),get(index): get()方法能够把jQuery对象转换为DOM中的元素集合。get(index)方法与get()功能相同,但是它能够获取指定索引值的元素对象,请注意它返回的是DOM对象。
  • index(subject): 获取jQuery对象中指定元素的索引值。如果找到了匹配的元素,从0开始返回;如果没有找到匹配的元素,返回-1。

访问 DOM 对象的属性

  • attr(name):根据属性名(name 参数)获取 jQuery 对象中第一个元素的对应属性值。
  • attr(key,value):为jQuery对象定义属性并赋值。
  • attr(key,fn):我们还可以为传递的属性值设置为一个函数,通过函数计算所得的值来为属性赋值。
  • attr(properties):为  jQuery 对象同时定义多个属性。多个属性以名/值对的形式组成对象进行参数传递。
  • removeAttr(name):该方法能够移出  jQuery 对象内指定属性。

访问 DOM 样式类

样式类实际上是一种特殊的属性(class) 。不过  jQuery 为此定义了三个方法专门用来控制样式类,其中包括增加类、删除类和开关类。

如果要为元素增加样式类,可以使用addClass(class)方法。也可以使用attr()方法定义样式类,此时是把它看作一个普通的属性进行增加。

如果要删除样式类,则可以使用 removeClass(class)方法。同样也可以使用removeAttr(name)方法来删除样式类。

jQuery还自定义了一个toggleClass(class)方法,它如同一个开关,如果元素已经定义了指定样式类,则会删除该样式类,否则增加该样式类。巧用这个方法,可以很轻松地设计鼠标经过或单击时动态改变元素样式的效果。

访问 DOM 元素包含信息

访问元素包含的信息可以使用text()方法获取。反过来,也可以为text()传递文本字符串,则将自动为元素添加指定文本字符串,同时会自动删除该元素包含的已有文本。(下面代码将会自动覆盖段落文本中原有信息,  而增加“<img src='images/1.jpg' width='100'  />”字符串,该字符串虽然是HTML源代码,但是在页面中仅显示字符串信息,而不是图像。)

text()和 text(val)方法能够读写 jQuery对象所有匹配元素的内容,结果是由所有匹配元素包含的文本内容组合起来的文本,这个方法对HTML和XML文档都有效。

如果希望获取段落中包含的所有内容(包括标签结构) ,则可以使用html()方法。同理,如果希望在段落中插入图像,而不是“<img src='images/1.jpg' width='100' />”字符串,则可以使用如下方法,这样所插入的字符串就不被编码,而是直接插入到文档结构中。 ($("p").html("<img src='images/1.jpg' width='100' />"); )

请注意,html()和 html(val)方法只作用于  jQuery 对象中第一个元素,也就是说只能够读写第一个元素内的HTML源代码,且不能用于XML文档,仅适用于XHTML文档。

text()和html()方法能够读写元素包含的信息和HTML源代码,但是如何读写表单域中的值却存在一定的问题。为此jQuery定义了val()方法,该方法专门用来读写表单值。

jQuery选择器

jQuery 提供了强大、易用的选择工具,用来选取网页对象或元素,这些选择工具主要包括两种方式。

方式一,模拟CSS和Xpath选择器,并混合它们的用法。这种方式可以把选择器字符串传递给jQuery构造器,从而达到选择复杂元素的目的。
方式二,使用jQuery对象定义的函数进行筛选。

这两种方式可以混合使用。

常用选择器

jQuery选择器严格遵循 CSS1 至 CSS3 选择器的规范和用法

图片

伪选择器

在 CSS 中曾经讲解过伪类和伪对象选择器,这些选择器不是选择页面中可视化的元素, 而是选择元素或页面中的某种状态或特性,以实现动态捕获特定元素,因此在页面中无法找到所要选择的对象。jQuery 支持所有 CSS 伪类和伪对象,同时还扩展了丰富的伪选择器。

图片

表单专用选择器

由于表单对象比较特殊,很多表单域都共用同一个元素input,这为快速选择特定表单域带来困难。为此jQuery定义了一组表单专用选择器。

:input               匹配所有 input、textarea、select 和 button表单元素 :text  匹配所有的单行文本框
:password       匹配所有密码框
:radio               匹配所有单选按钮
:checkbox       匹配所有复选框
:submit            匹配所有提交按钮
:image             匹配所有图像域
:reset               匹配所有重置按钮
:button            匹配所有按钮
:file                   匹配所有文件域
:hidden            匹配所有不可见元素,或者 type 为 hidden的元素
:enabled          匹配所有可用元素
:disabled         匹配所有不可用元素
:checked         匹配所有选中的复选框元素
:selected         匹配所有选中的选项元素

筛选函数

jQuery还优化并扩展了很多筛选函数,这些函数作为jQUery对象的方法直接使用,这样就能够在选择器的基础上更加精确地控制对象。请注意,筛选函数与选择器在用法上是不同的。

 图片

图片

文档处理

使用DOM为元素节点增加子元素或文本节点。  DOM提供的方法比较烦琐,需要先选中对象,再定义子节点,最后才能够使用 a()方法实现插入子元素或文本。jQuery提供的文档处理方法要比DOM简单得多,且功能更为强大和灵活。

插入内容

jQuery 把插入分为内部插入和外部插入两种操作。

所谓内部插入,就是把内容直接插入到指定的元素内部。

  • append():append()方法与DOM的a()方法功能类似,都是在元素内部增加子元素或文本。与DOM中a()方法不同的是:jQuery中的append()方法能够同时为jQuery对象中多个元素增加内容,所增加的内容不需要先定义成节点,可以直接把它作为字符串插入到元素内。另外,jQuery还定义了一个反操作的方法——appendTo(content),它可以把所有匹配的元素追加到另一个指定的元素集合中。
  • prepend():prepend()方法与 append()方法作用相同,都是把指定内容插入到 jQuery对象元素中,但是prepend()方法能够把插入的内容放置在最前面,而不是放置在最末尾。appendTo()方法相对应的是prependTo()该方法能够把所有匹配的元素前置到另一个指定的元素集合中。

所谓外部插入,就是把内容插入到指定jQuery对象相邻元素内。与内部插入操作基本类似,外部插入也包含四种方法。这四种方法可以实现相同的功能, 但是它们的作用点却各有侧重。  请注意, 除了使用jQuery对象作为插入内容的参数外,还可以插入DOM元素或元素集合,以及HTML结构字符串。

  • after(content):在每个匹配的元素之后插入内容。
  • before(content):在每个匹配的元素之前插入内容。
  • insertAfter(content):把所有匹配的元素插入到另一个指定的元素或元素集合的后面。
  • insertBefore(content):把所有匹配的元素插入到另一个指定的元素或元素集合的前面。

嵌套结构

嵌套与插入操作有几分相似,虽然它们都可以实现相同的操作目标,但是两者在概念上还是存在一些区别。嵌套重在结构的构建,而插入侧重内容的显示。jQuery 定义了如下六个嵌套
结构的方法。

  • wrap(html):把所有匹配的元素分别用指定结构化标签包裹起来。
  • wrap(element):把所有匹配的元素分别用指定元素包裹起来。
  • wrapAll(html):把所有匹配的元素用一个结构化标签包裹起来。
  • wrapAll(element):把所有匹配的元素用一个元素包裹起来。
  • wrapInner(html):把每一个匹配的元素的子内容(包括文本节点)使用一个 HTML 结构包裹起来。
  • wrapInner(element):把每一个匹配的元素的子内容(包括文本节点)使用元素包裹起来。

替换结构

jQuery提供了replaceWith(content)replaceAll(selector)方法来实现HTML结构替换。replaceWith()能够将所有匹配的元素替换成指定的HTML或DOM元素。replaceAll(selector)方法与replaceWith(content)方法操作正好相反。

删除和克隆结构

删除结构也有两种方法:一是使用empty()删除匹配元素包含的所有子节点。二是使用remove([expr])方法删除匹配的元素,或者符合表达式的匹配元素。

结构复制主要使用clone()clone(true)方法。clone()表示克隆匹配的DOM元素并选中克隆的元素。clone(true)方法不仅能够克隆元素,而且还可以克隆元素所定义的事件。

 

CSS 处理

jQuery对于CSS技术的支持主要体现在两方面:一是强大完善的选择器支持,使用  jQuery 可以精确选择页面中任意元素和结构;二是定义了几个超强的CSS方法,使用这些方法可以很方便地为页面元素定义样式,精确控制元素在页面中的显示。

css()方法

使用css(name)可以读写元素的样式。在前面章节中我们也经常使用这个方法来为页面元素定义样式,或者获取指定属性的值。css(name)方法仅能够获取匹配元素中第一个元素的指定属
性的属性值。css(name)方法仅能够读取元素的行内样式的属性值,而对于内部或外部样式表中的属性是无法读取的,这与 DOM 中元素的 style 属性相似。使用 css(name,value)方法还能够为元素定义样式。请注意,这里的属性和属性值都是以字符串的形式存在的。在设置CSS属性名和属性值时,不能够使用DOM中style对象包含的样式属性,只需要保持CSS中的名称写法即可。也可以利用名/值对对象来为css()方法传递多个属性和属性值, 从而实现在一个方法体内定义多种样式效果。

位移

jQuery定义了一个非常实用的offset()方法,该方法能够获取匹配元素的第一个元素在当前窗口的坐标。该坐标以窗口左上顶角为圆点进行参考。返回对象包含  top 和  left 属性值,分别
表示该元素距离左侧和顶部的记录。

显示大小

可以使用jQuery来操控元素的显示大小。jQuery定义了四种方法来实现元素的宽和高读写操作。

height():获取第一个匹配元素当前计算的高度值(px) 。
width():获取第一个匹配元素当前计算的宽度值(px) 。
height(val):为每个匹配的元素设置 CSS 高度属性值。如果没有明确指定单位,默认使用px。
width(val):为每个匹配的元素设置CSS宽度属性值。如果没有明确指定单位,默认使用px。

事件处理 

jQuery继承了JavaScript事件机制,并在JavaScript事件处理模型基础上进行了部分打包,且提供了很多个性化的事件处理方法,这些方法可以方便用户无须在元素或 DOM 对象上绑定
事件, 而是直接通过jQuery为对象添加事件, 这样就加快了开发进度。

页面初始化事件

页面初始化事件是Web开发中比较常用的一种事件。在DOM一般通过如下两种方法来实现。
window.onload = function(){ }

<body οnlοad="function()">
但是如果在页面中多处使用该函数,  或者外部脚本文件  (.js)  中也包含window.onload函数, 就很容发生冲突。jQuery定义了ready()方法,能够很好地解决了这个问题,它能够自动将其中的函数在页面加载完成后运行,并且同一个页面中可以使用多个ready()方法,而且相互之间不会发生冲突。

<script language="javascript" type="text/javascript">
$(document).ready(function(){
alert("页面加载完毕!");
});
</script>
上面脚本将在页面加载完毕之后,自动弹出一个提示对话框,显示提示信息。当然也可以在这个函数中放置任何代码,如在页面初始化之后执行的代码。还可以进一步简写成下面的形式,也就是说在jQuery()函数中直接包含页面初始化后执行的函数。
$(function(){
alert("页面加载完毕!");
});
这是事件模块中最重要的一个函数,因为它可以极大地提高Web应用程序的响应速度。不过这种方法仅是 window.load  注册事件的一种替代方法,可以在同一个页面中无限次地使用$(document).ready()事件,其中注册的函数会根据代码中的先后顺序依次执行。请注意,在使用 ready()方法注册页面初始化事件时,要确保在 body 元素的 onload 事件属性内没有注册函数,否则不会触发$(document).ready()事件。

绑定事件

jQuery定义了几个方法用来为jQuery对象绑定事件,具体说明如下。

1. bind(type,[data],fn)

bind()方法能够为每一个匹配元素的特定事件绑定一个事件处理器函数。例如,下面示例中为所有div元素绑定鼠标单击事件,并注册一个事件处理函数,即单击当前div元素时会自动显
示该元素包含的文本。
<div>盒子</div>
<script language="javascript" type="text/javascript">
$("div").bind("click",function(){
alert($(this).text());
});
</script>
在绑定过程中也可以为事件处理函数绑定多个参数值,参数值以对象的形式进行传递,然后在处理函数中可以把它作为 event.data 属性值传递给处理函数。例如,在下面示例中,bind()
方法以对象的形式传递了一个 who 等于“zhu”的参数值,然后在处理函数中利用 event.data 对象的属性把它捕捉并显示出来。
<div>盒子</div>
<script language="javascript" type="text/javascript">
$("div").bind("click",{who:"zhu"},function(event){
alert(event.data.who);
});
</script>
绑定事件之后,也可以使用  unbind([type],[data])方法删除事件绑定,其中第一个参数表示要删除绑定的事件名,第二个参数表示删除的附带参数。例如,下面示例将把刚注册的鼠标单
击事件删除掉。
<script language="javascript" type="text/javascript">
$("div").bind("click",{who:"zhu"},function(event){
alert(event.data.who);
});
$("div").unbind("click");
</script>

2. one(type,[data],fn)

one()方法是  bind()方法的一个特例,它能够匹配元素绑定一个仅能够执行一次的事件处理函数。其用法与bind()完全相同。

3. trigger(type,[data])

trigger 表示开关的意思,jQuery定义trigger()方法用来触发默认事件或自定义事件。例如,在下面示例中自定义了一个事件me,把该事件绑定到div元素上,然后定义事件处理函数,弹 出提示对话框,显示div元素包含的文本信息。
<div>盒子</div>
<script language="javascript" type="text/javascript">
$("div").bind("me", function () {
alert($(this).text());
});
</script>
这个自定义事件是无法自动执行的,也不会响应鼠标或键盘行为。我们可以为它定义一个trigger()方法,代码如下:
$("div").bind("me", function () {
alert($(this).text());
});
$("div").trigger("me");
这样当页面加载时会自动执行该自定义事件函数。也可以把这个自定义事件放在另一个事件函数中,这样只有触发其他事件时,才会响应该自定义事件,并执行自定义事件处理函数。
$("div").bind("me", function () {
alert($(this).text());
});
$("div").bind("mouseover",function(){
$("div").trigger("me");
});

上面脚本将在鼠标移过时自动触发自定义的事件处理函数。对于默认事件,如果使用trigger()方法触发该事件处理函数,同时默认事件自身也可以自动触发事件。例如,在下面这个
示例中,当鼠标指针移到 p 元素上时将触发绑定的事件 click,而当单击 div 元素时,也能够触发该事件绑定的处理函数。
<p>段落文本</p>
<div>盒子</div>
<script language="javascript" type="text/javascript">
$("div").bind("click", function () {
alert($(this).text());
});
$("p").bind("mouseover",function(){
$("div").trigger("click");
});
</script>
如果希望仅触发指定事件类型上所有绑定的处理函数,但不执行默认事件,则可以使用triggerHandler(type,[data])方法。triggerHandler()方法与  trigger()用法相同,但不会触发默认
事件。

交互事件

为了简化用户交互操作,jQuery自定义了两个事件:hover(over,out)和toggle(fn,fn)。hover()能够模仿悬停事件,即鼠标移到特定对象上以及移出该对象的方法。它定义当鼠标移到匹配的元素上时,会触发第一个函数。当鼠标移出该元素时,会触发第二个函数。例如,下面示例定义当鼠标移过段落文本时会设置字体显示为红色,而移开时又恢复默认颜色。
<p>段落文本</p>
<script language="javascript" type="text/javascript">
$("p").hover(
function(){
$(this).css("color","red");
},
function(){
$(this).css("color","transparent");
}
);
</script>

toggle(fn,fn)能够模仿鼠标单击事件,该方法我们已经讲解过,它表示每次单击时切换要调用的函数。如果单击了一个匹配的元素,则触发指定的第一个函数,当再次单击同一元素时,
则触发指定的第二个函数,随后的每次单击都重复对这两个函数的轮番调用。例如,在上面示例的基础上,我们修改其中的hover()方法,替换为toggle()方法,这样当单击段落文本时,会自动在默认色和红色之间进行切换。对于该方法可以使用unbind("click")删除。
<p>段落文本</p>
<script language="javascript" type="text/javascript">
$("p").toggle(
function(){
$(this).css("color","red");
},
function(){
$(this).css("color","transparent");
}
);
</script>

封装默认事件

除了使用bind()、one()和trigger()绑定或触发事件外,jQuery还把DOM默认的事件都封装成了对应的方法,这样就可以在  jQuery 对象中作为一个方法直接调用。例如,click()能够触发 元素的单击事件。也可以在 click()方法中设置一个事件处理函数,这样当单击元素时,将触发执行该参数函数。

动画处理

基本动画

jQuery定义了显示、隐藏和切换隐藏/显示的方法,用来实现简单的动画效果。具体说明如下。

show():显示隐藏的匹配元素。
show(speed,[callback]):使用动画方式显示所有匹配的元素,并在显示完成后触发回调函数。
hide():隐藏显示的元素。
hide(speed,[callback]):使用动画方式隐藏所有匹配的元素,并在隐藏完成后触发回调函数。
toggle():切换元素的可见状态。

例如,在下面示例中先使用CSS隐藏段落文本,  然后使用jQuery定义show()逐步显示或隐藏段落文本。并在显示完毕之后弹出一个提示对话框,提示文本显示完毕。
<p  style="display:none;">段落文本</p>
<script language="javascript" type="text/javascript">
$(function(){
$("p").show(1000,
function(){
alert($(this).text()+"显示完毕");
})
});
</script>

show(speed,[callback])和hide(speed,[callback])这两种方法的用法相同,  这些方法的第一个参数表示动画指定的毫秒数,jQuery也定义了三个预定义关键字:slow、normal和fast。而show()和hide()是直接显示和隐藏。
读者在使用这些方法时应注意:只有隐藏元素才可以有效执行 show()或 show(speed,[callback])方法,而只有显示元素才能执行hide()和hide(speed,[callback])方法。

滑动动画 

jQuery还定义了几个滑动效果的显示和隐藏动画。其中slideDown(speed,callback)可以把隐藏元素以滑动的效果显示出来。例如,下面示例的效果与show(speed,[callback])方法设计的动画效果相同。
<p style="display:none;">段落文本</p>
<script language="javascript" type="text/javascript">
$("p").slideDown("slow");
</script>
而下面示例的演示效果正好相反,它把段落文本以滑动形式隐藏起来。
<p>段落文本</p>
<script language="javascript" type="text/javascript">
$("p").slideUp("slow");
</script>
使用 slideToggle(speed,[callback])方法能够滑动隐藏显示元素或显示隐藏元素。例如,下面示例先向下滑动显示段落文本,然后再向上滑动显示段落文本。
<p style="display:none;">段落文本</p>
<script language="javascript" type="text/javascript">
$("p").slideToggle("slow");
$("p").slideToggle("slow"); </script>

淡入淡出

jQuery 定义了 fadeIn(speed,[callback])和 fadeOut(speed,[callback])方法来设计显示/隐藏元素的淡入淡出效果,其用法与上面示例相同,只不过动画效果不同。例如,下面示例以渐变的方法逐渐显示隐藏的段落文本。
<p style="display:none;">段落文本</p>
<script language="javascript" type="text/javascript">
$("p").fadeIn("slow");
</script>
当然,混合使用这两种方法可以设计更复杂的动画效果。例如,下面示例中段落文本先是以逐步淡入的效果显示出来,然后当鼠标经过时,又以极快的速度淡出—淡入—淡出—淡入, 从而设计出闪动的特效。
<p style="display:none;">段落文本</p>
<script language="javascript" type="text/javascript">
$("p").fadeIn(2000);
$("p").bind("mouseover",function(){
$("p").fadeOut(100);
$("p").fadeIn(100);
$("p").fadeOut(100);
$("p").fadeIn(100);
});
</script>
另外,jQuery还定义了另外一个很实用的fadeTo(speed,opacity,[callback]),该方法可以把显示的元素逐步淡出为半透明效果,这个半透明可以在参数中进行设置。不透明度值可以是 0 到 1之间的数字。
例如,在下面示例中,首先利用  fadeTo()方法把显示的段落文本逐步过渡为半透明效果,透明度为0.2,然后在执行完该淡出效果后,再次在回调函数中调用fadeTo()方法把半透明的段
落文本逐步淡入到不透明状态。整个设计从而产生一种半显半隐的初始化效果。
<p>段落文本</p>
<script language="javascript" type="text/javascript">
$("p").fadeTo("slow", 0.2, function(){
$(this).fadeTo("slow", 1);
});
</script>

Ajax技术处理

jQuery 也支持 Ajax 技术,它封装了 XMLHttpRequest 组件并初始化,还封装了 Ajax 请求中各种基本操作,并把这些操作定义为简单的方法。另外,把Ajax请求中各种状态封装为件,
这样只要调用对应的事件就可以快速执行绑定的回调函数。

Ajax请求

jQuery封装了多种方法实现与远程进行通信,下面分别进行讲解。

load(url,[data],[callback])

load()方法能够载入远程HTML文件代码并插入到匹配元素中。默认使用GET方式,传递附加参数时自动转换为POST方式。在使用load()方法时,所有页面的字符编码应该设置为utf­8,否则jQuery在加载文档时会显示乱码。另外,匹配的元素应该只有一个,否则系统会出现异常。
load(url,[data],[callback])方法还可以附带传递参数,这些参数将以 POST 方式传递给服务器,并可以定义加载成功时执行的回调函数。

jQuery.get(url,[data],[callback])

jQuery.get()方法能够通过远程HTTP GET方式请求载入信息。该方法包含三个参数,参数含义与load()方法相同。

jQuery.post(url,[data],[callback])

jQuery.post()与  jQuery.get()的操作方法相同,不同点是它们传递参数的方式不同。jQuery.post()是以POST方式来传递参数,所传递的信息可以不受限制,且可以传递二进制信息,具体用法就不再举例。

jQuery.ajax()请求

jQuery.ajax(options)方法与前面讲解的几个方法功能相同,都是向服务器端发送请求,并传递参数,最后调用回调函数获取响应信息。jQuery.ajax()方法的参数是一个对象包含的参数名/值对组合。

jQuery.ajax()方法的主要参数名及其说明
参数名             说 明
async              逻辑值,默认为 true,即请求为异步请求。如果需要发送同步请求,该选项设置为 false。同步请求将锁住浏览器,用户的其他操作必须等待请求完成才可以执行
beforeSend  发送请求前可修改 XMLHttpRequest 对象的函数
cache             是否从浏览器缓存中加载请求信息,默认为 false
complete      请求完成后回调函数,不管请求是成功还是失败均调用
contentType  发送信息到服务器时内容编码类型,默认为适合大多数应用场合
data               发送到服务器的数据将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。如果 processData 选项禁止此自动转换,必须为名/值对格式。如果为数组,jQuery  将自动为不同值对应同一个名称,如{foo:["bar1","bar2"]}转换为'&foo=bar1&foo=bar2'
dataType     预期服务器返回的数据类型。取值包括 xml、html、script、json和 jsonp
error             请求失败时调用函数
global           是否触发全局  Ajax事件,默认为 true
ifModified   是否仅在服务器数据改变时获取新数据,默认为 false
processData  发送的数据是否可以被转换为对象,默认为 true
success        请求成功后回调函数,参数为服务器返回数据
timeout       设置请求超时时间(毫秒)
type             发送请求的方式,默认为 GET,取值包含 POST、GET、PUT 和 DELETE
url                 发送请求的地址

Ajax事件

jQuery 为了方便用户灵活跟踪 Ajax 请求和响应整个完整的过程,还定义了几个事件函数。

Ajax事件                     说 明
ajaxStart(callback)    Ajax请求开始时执行函数
ajaxSend(callback)    Ajax请求发送前执行函数
ajaxComplete(callback)  Ajax请求完成时执行函数
ajaxSuccess(callback)  Ajax请求成功时执行函数
ajaxError(callback)    Ajax请求发生错误时执行函数
ajaxStop(callback)    Ajax请求结束时执行函数


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值