JQuery笔录

1.jQuery 的 hide() 函数,隐藏了 HTML 文档中所有的 <p> 元素。

<script type="text/javascript">

$(document).ready(function(){

$("p").click(function(){

$(this).hide();

});

});

</script>

2.jQ的绑定

$(document).ready(function(){

--- jQuery functions go here ----

});

3.点击事件

<script type="text/javascript">

$(document).ready(function(){

$("button").click(function(){

$("p").hide(); //隐藏事件

});

});

</script>

事件汇总:

Event 函数 绑定函数至

$(document).ready(function) 将函数绑定到文档的就绪事件(当文档完成加载时)

$(selector).click(function) 触发或将函数绑定到被选元素的点击事件

$(selector).dblclick(function) 触发或将函数绑定到被选元素的双击事件

$(selector).focus(function) 触发或将函数绑定到被选元素的获得焦点事件

$(selector).mouseover(function) 触发或将函数绑定到被选元素的鼠标悬停事件

4.jQ效果:

jQuery hide() 和 show()

通过 jQuery,您可以使用 hide() 和 show() 方法来隐藏和显示 HTML 元素:

$("#hide").click(function(){

$("p").hide();

});

$("#show").click(function(){

$("p").show();

});

jQuery toggle()

通过 jQuery,您可以使用 toggle() 方法来切换 hide() 和 show() 方法。

显示被隐藏的元素,并隐藏已显示的元素:

语法:$(selector).toggle(speed,callback);

实例

$("button").click(function(){

$("p").toggle();

});

jQuery fadeIn() 方法

jQuery fadeIn() 用于淡入已隐藏的元素。

语法:

$(selector).fadeIn(speed,callback);

实例

$("button").click(function(){

$("#div1").fadeIn();

$("#div2").fadeIn("slow");

$("#div3").fadeIn(3000);

});

jQuery slideUp() 方法用于向上滑动元素。

语法:

$(selector).slideUp(speed,callback);

实例

$("#flip").click(function(){

$("#panel").slideUp();

});

jQuery animate() - 操作多个属性

请注意,生成动画的过程中可同时使用多个属性:

实例

$("button").click(function(){

$("div").animate({

left:'250px',

opacity:'0.5',

height:'150px',

width:'150px'

});

});

5.获得内容和属性

获得内容 - text()、html() 以及 val()

三个简单实用的用于 DOM 操作的 jQuery 方法:

text() - 设置或返回所选元素的文本内容

html() - 设置或返回所选元素的内容(包括 HTML 标记)

val() - 设置或返回表单字段的值

例:

$("#btn1").click(function(){

alert("Text: " + $("#test").text());

});

$("#btn2").click(function(){

alert("HTML: " + $("#test").html());

});

$("#btn1").click(function(){

alert("Value: " + $("#test").val());

});

获取属性 - attr()

jQuery attr() 方法用于获取属性值。

下面的例子演示如何获得链接中 href 属性的值:

实例

$("button").click(function(){

alert($("#w3s").attr("href"));

});

7.设置属性attr

改变图像的 width 属性:

$("button").click(function(){

$("img").attr("width","180");

});

设置属性/值

设置被选元素的属性和值。

语法

$(selector).attr(attribute,value)

使用函数来设置属性/值

设置被选元素的属性和值。

语法

$(selector).attr(attribute,function(index,oldvalue))

设置多个属性/值对

为被选元素设置一个以上的属性和值。

语法

$(selector).attr({attribute:value, attribute:value ...})

8.添加新元素/内容。

jQuery append() 方法

jQuery append() 方法在被选元素的结尾插入内容。

实例

$("p").append("Some appended text.");

jQuery prepend() 方法

jQuery prepend() 方法在被选元素的开头插入内容。

实例

$("p").prepend("Some prepended text.");

jQuery after() 和 before() 方法

jQuery after() 方法在被选元素之后插入内容。

jQuery before() 方法在被选元素之前插入内容。

实例

$("img").after("Some text after");

$("img").before("Some text before");

append实在当前元素内部最后边插入元素

after是在当前元素后面外插入元素

9.删除元素

如需删除元素和内容,一般可使用以下两个 jQuery 方法:

remove() - 删除被选元素(及其子元素)

empty() - 从被选元素中删除子元素

jQuery remove() 方法

jQuery remove() 方法删除被选元素及其子元素。

实例

$("#div1").remove();

jQuery empty() 方法

jQuery empty() 方法删除被选元素的子元素。

实例

$("#div1").empty();

jQuery remove() 方法也可接受一个参数,允许您对被删元素进行过滤。

该参数可以是任何 jQuery 选择器的语法。

下面的例子删除 class="italic" 的所有 <p> 元素:

实例

$("p").remove(".italic");

10.jQuery 操作 CSS

jQuery 拥有若干进行 CSS 操作的方法。我们将学习下面这些:

addClass() - 向被选元素添加一个或多个类

removeClass() - 从被选元素删除一个或多个类

toggleClass() - 对被选元素进行添加/删除类的切换操作

css() - 设置或返回样式属性

jQuery addClass() 方法

下面的例子展示如何向不同的元素添加 class 属性。当然,在添加类时,您也可以选取多个元素:

实例

$("button").click(function(){

$("h1,h2,p").addClass("blue");

$("div").addClass("important");

});

jQuery removeClass() 方法

下面的例子演示如何不同的元素中删除指定的 class 属性:

实例

$("button").click(function(){

$("h1,h2,p").removeClass("blue");

});

jQuery toggleClass() 方法

下面的例子将展示如何使用 jQuery toggleClass() 方法。该方法对被选元素进行添加/删除类的切换操作:

实例

$("button").click(function(){

$("h1,h2,p").toggleClass("blue");

});

11.设置css样式

设置 CSS 属性

如需设置指定的 CSS 属性,请使用如下语法:

css("propertyname","value");

设置多个 CSS 属性

如需设置多个 CSS 属性,请使用如下语法:

css({"propertyname":"value","propertyname":"value",...});

实例

$("p").css({"background-color":"yellow","font-size":"200%"});

12.jQuery 尺寸 方法

jQuery 提供多个处理尺寸的重要方法:

width()

height()

innerWidth()

innerHeight()

outerWidth()

outerHeight()

实例

$("button").click(function(){

var txt="";

txt+="Width: " + $("#div1").width() + "</br>";

txt+="Height: " + $("#div1").height();

$("#div1").html(txt);

});

13.遍历

首先理解:

遍历 DOM 树

<div> 元素是 <ul> 的父元素,同时是其中所有内容的祖先。

<ul> 元素是 <li> 元素的父元素,同时是 <div> 的子元素

左边的 <li> 元素是 <span> 的父元素,<ul> 的子元素,同时是 <div> 的后代。

<span> 元素是 <li> 的子元素,同时是 <ul> 和 <div> 的后代。

两个 <li> 元素是同胞(拥有相同的父元素)。

右边的 <li> 元素是 <b> 的父元素,<ul> 的子元素,同时是 <div> 的后代。

<b> 元素是右边的 <li> 的子元素,同时是 <ul> 和 <div> 的后代。

向上遍历 DOM 树

这些 jQuery 方法很有用,它们用于向上遍历 DOM 树:

parent()

parents()

parentsUntil()

jQuery parent() 方法

parent() 方法返回被选元素的直接父元素。

实例

$(document).ready(function(){

$("span").parent();

});

jQuery parents() 方法

parents() 方法返回被选元素的所有祖先元素,它一路向上直到文档的根元素 (<html>)。

下面的例子返回所有 <span> 元素的所有祖先:

$(document).ready(function(){

$("span").parents("ul");

});

jQuery parentsUntil() 方法

parentsUntil() 方法返回介于两个给定元素之间的所有祖先元素。

下面的例子返回介于 <span> 与 <div> 元素之间的所有祖先元素:

实例

$(document).ready(function(){

$("span").parentsUntil("div");

});

②jQuery 遍历 - 后代

下面是两个用于向下遍历 DOM 树的 jQuery 方法:

children()

find()

jQuery children() 方法

children() 方法返回被选元素的所有直接子元素。

实例

$(document).ready(function(){

$("div").children();

});

下面的例子返回类名为 "1" 的所有 <p> 元素,并且它们是 <div> 的直接子元素:

实例

$(document).ready(function(){

$("div").children("p.1");

});

jQuery find() 方法

find() 方法返回被选元素的后代元素,一路向下直到最后一个后代。

下面的例子返回属于 <div> 后代的所有 <span> 元素:

实例

$(document).ready(function(){

$("div").find("span");

});

③jQuery 遍历 - 同胞

在 DOM 树中水平遍历

有许多有用的方法让我们在 DOM 树进行水平遍历:

siblings()

next()

nextAll()

nextUntil()

prev()

prevAll()

prevUntil()

jQuery siblings() 方法

siblings() 方法返回被选元素的所有同胞元素。

下面的例子返回 <h2> 的所有同胞元素:

实例

$(document).ready(function(){

$("h2").siblings();

});

下面的例子返回属于 <h2> 的同胞元素的所有 <p> 元素:

实例

$(document).ready(function(){

$("h2").siblings("p");

});

jQuery next() 方法

next() 方法返回被选元素的下一个同胞元素。

该方法只返回一个元素。

下面的例子返回 <h2> 的下一个同胞元素:

实例

$(document).ready(function(){

$("h2").next();

});

jQuery nextAll() 方法

nextAll() 方法返回被选元素的所有跟随的同胞元素。

下面的例子返回 <h2> 的所有跟随的同胞元素:

实例

$(document).ready(function(){

$("h2").nextAll();

});

jQuery nextUntil() 方法

nextUntil() 方法返回介于两个给定参数之间的所有跟随的同胞元素。

下面的例子返回介于 <h2> 与 <h6> 元素之间的所有同胞元素:

实例

$(document).ready(function(){

$("h2").nextUntil("h6");

});

④jQuery 遍历 - 过滤

jQuery first() 方法

first() 方法返回被选元素的首个元素。

下面的例子选取首个 <div> 元素内部的第一个 <p> 元素:

实例

$(document).ready(function(){

$("div p").first();

});

jQuery last() 方法

last() 方法返回被选元素的最后一个元素。

下面的例子选择最后一个 <div> 元素中的最后一个 <p> 元素:

实例

$(document).ready(function(){

$("div p").last();

});

jQuery eq() 方法

eq() 方法返回被选元素中带有指定索引号的元素。

索引号从 0 开始,因此首个元素的索引号是 0 而不是 1。下面的例子选取第二个 <p> 元素(索引号 1):

实例

$(document).ready(function(){

$("p").eq(1);

});

jQuery filter() 方法

filter() 方法允许您规定一个标准。不匹配这个标准的元素会被从集合中删除,匹配的元素会被返回。

下面的例子返回带有类名 "intro" 的所有 <p> 元素:

实例

$(document).ready(function(){

$("p").filter(".intro");

});

jQuery not() 方法

not() 方法返回不匹配标准的所有元素。

提示:not() 方法与 filter() 相反。

下面的例子返回不带有类名 "intro" 的所有 <p> 元素:

实例

$(document).ready(function(){

$("p").not(".intro");

});

⑤ map() 方法

<script>

$("p").append( $("input").map(function(){

return $(this).val();

}).get().join(", ") );

</script>

<script>

$("p").append($(':checkbox').map(function() {

return this.id;

}).get().join(','));

</script>

12.AJAX get() 和 post() 方法

jQuery $.get() 方法

$.get() 方法通过 HTTP GET 请求从服务器上请求数据。

语法:

$.get(URL,callback);

必需的 URL 参数规定您希望请求的 URL。

可选的 callback 参数是请求成功后所执行的函数名。

下面的例子使用 $.get() 方法从服务器上的一个文件中取回数据:

实例

$("button").click(function(){

$.get("demo_test.asp",function(data,status){

alert("Data: " + data + "\nStatus: " + status);

});

});

jQuery $.post() 方法

$.post() 方法通过 HTTP POST 请求从服务器上请求数据。

语法:

$.post(URL,data,callback);

必需的 URL 参数规定您希望请求的 URL。

可选的 data 参数规定连同请求发送的数据。

可选的 callback 参数是请求成功后所执行的函数名。

下面的例子使用 $.post() 连同请求一起发送数据:

实例

$("button").click(function(){

$.post("demo_test_post.asp",

{

name:"Donald Duck",

city:"Duckburg"

},

function(data,status){

alert("Data: " + data + "\nStatus: " + status);

});

});

AJAX教程

1.GET 还是 POST?

与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。

然而,在以下情况中,请使用 POST 请求:

无法使用缓存文件(更新服务器上的文件或数据库)

向服务器发送大量数据(POST 没有数据量限制)

发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠