jQuery基础

来源:互联网 发布:mac版的eos utility 编辑:程序博客网 时间:2024/06/15 11:37

JavaScript中所有不声明而直接使用的变量均为全局量,定义和使用函数时要注意闭包问题,一般将函数定义放到一个闭包中,变量均声明为局部变量。如

(funciton(){

var obj;//局部变量

v1 = 123;//全局变量

});

jQuery库添加了三个全局变量:jQuery,$两个相同,其实是jQuery.fn.init函数的对象

添加jQuery库可以使用Google CDN内容分发网络(速度更快,可以根据使用的地点选择最近的服务器),可以加载其提供的jQuery.js,本地服务器不需要保存jQuery库源码。

<script type="text/javascript" src="http://www.google.com/jsapi"></script>

<script type="text/javascript">

google.load("jQuery","1.7.1")

</script>

jQuery用法

一、jQuery对象的方法:

var o = jQuery();

o.method();

二、jQuery自身方法:jQuery核心函数,Ajax,工具函数都是该用法

jQuery.method();

jQuery核心函数,

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<htmlxmlns="http://www.w3.org/1999/xhtml">

<head>

<metahttp-equiv="Content-Type"content="text/html; charset=utf-8"/>

<title>jQuery选择器练习</title>

<scripttype="text/javascript"src="jquery-1.7.1.js"></script>

<scripttype="text/javascript">

//jQuery的文档加载后执行JavaScript方法

//jQuery(function($){});全局使用jQuery,传递$参数,保证引用多个JavaScript库(如,Prototype)时不出变量冲突

jQuery(function($) {

//===================DOM对象与JQuery包装集===================

//通过document.getElementById()document.getElementsByName()document.getElementsByTagName()等取的就是DOM对象或DOM对象集,前者取的是对象,后者取得DOM对象集

var dom_obj= document.getElementById("text11");

var dom_obj= document.getElementsByName("text11")[0];

//var dom_obj = document.all["text11"];//Quirks ModeFirefox才有作用

//如果要使用JQuery提供的函数首先要构造JQuery包装集,通过$()返回的即是JQuery包装集(jQuery自定义的对象)

/*

* jQuery包装集“$”"jQuery"一样都是调用如下函数返回

* "$===jQuery =" function (selector, context) {

* return new jQuery.fn.init(selector, context, rootjQuery);

* }

*/

var jquery_obj= $("#text11");

//返回是jQuery包装集对象,不是DOM对象

//===================JQuery包装集与DOM对象互相转换===================

//DOM对象不能使用JQuery属性方法,但DOM对象可以通过$()(这是jQuery一个核心函数)转换成JQuery包装集

var htmlStr= $(document.getElementById("text11")).val();

//JQuery包装集可以使用部分DOM对象的属性方法如.length,但也有个别属性方法不能使用如.value,可以获取对应DOM对象后进行操作

//要想根据jQuery包装集对象得到DOM对象,有以下方法

var dom_obj= $("#text11")[0];

var dom_obj= $("#text11").get(0);

var dom_obj= $("#text11").get()[0];

var text11_dom= $("#text11")[0];

//each循环时或触发事件时的this也是DOM对象

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

this.value="";

});

//===================$符号在JQuery中代表对JQuery对象的引用,JQuery的核心方法有四个===================

//jQuery(html[,ownerDocument]):根据HTML字符串动态创建Dom元素.

$("<div><p>Hello!</p></div>").appendTo("body");

//jQuery( elements ):将一个或多个Dom对象封装为jQuery包装集,就是上面的DOM对象与JQuery包装集转换

//jQuery( callback ):$(document).ready()的简写方式$(function(){ alert("Hello!");});

//JQuery(selector[,context]):在指定范围内查找符合条件的JQuery包装集,context为查找范围,context可以是DOM对象集也可以是JQuery包装集

//在所有tr标签中查找idtext11元素的JQuery包装集

var text11_query=$("#text11","tr");

//===================jQuery选择器全解===================

//jQuery选择器可以使用全部的CSS选择器,以及XPath选择器

//===================1.基础选择器 Basics===================

//根据标签名进行选择

var input_query=$("input");

//根据id值选取

var text11_query=$("#text11");

//根据class值进行选取

var text11_query=$(".text11");

//同时选择多个符合条件的JQuery包装集,用","号分隔条件

var text_query=$("#text11,#text12");

//选择所有DOM元素

var all_query=$("*");

//===================2.层次选择器 Hierarchy===================

//获取以tr标签作为上下文的id值为text11的元素

var text11_query=$("tr #text11");

//获取所有td标签下的所有直接input子元素

var input_query=$("td > input");

//获取所有idtext11元素的同级且紧靠的classbutton11元素。text11button11在地位上属于同级关系

var button11_query=$("#text11 + .button11");

//获取与idtext11元素同级,且处于后面的所有classbutton11的元素

var button11_query=$("#text11~.button11");

//===================3.基本过滤器 Basic Filters===================

//相当于CSS选择器中的伪类

//获取第一个input元素

var input_query=$("input:first");

//获取最后一个input元素

var input_query=$("input:last");

//获取所有未被选中的input元素,仅对有checked属性的元素有效

var input_query=$("input:not(:checked)");

//获取所有input元素中偶数的元素,第一个input元素为1

var input_query=$("input:even");

//获取所有input元素中奇数的元素,第一个input元素为1

var input_query=$("input:odd");

//查找所有input元素中索引为1input元素,索引值从0算起

var input_query=$("input:eq(1)");

//查找所有input元素中索引大于0input元素(不包含索引为0的元素)

var input_query=$("input:gt(0)");

//查找所有input元素中索引小于2input元素(不包含索引为2的元素)

var input_query=$("input:lt(2)");

//获取页面所有标题元素,等价于$("h1, h2,h3,h4,h5,h6")

var h_query=$(":header");

//获取所有正在执行动画效果的元素

var animated_query=$(":animated");

//===================4.内容过滤器 Content Filters===================

//查找所有html内容含有"你好世界!"h1元素

var h1_query=$("h1:contains('你好世界!')");

//获取所有不含子标签或html内容为空的td元素

var td_query=$("td:empty");

//查找所有含有input子元素的td元素

var td_query=$("td:has(input)");

//查找所有含有子标签或有html内容的td元素,与empty过滤器作用相反

var td_query=$("td:parent");

//===================5.可见性过滤器 Visibility Filters===================

//hidden查找所有不可见元素(如<script>标签不可见),或者typehidden的元素(对于使用visibility:hidden隐藏的元素不能获取)

//查找使用typehiddeninput元素

var input_query=$("input:hidden");

//查找所有可见的input元素

var input_query=$("input:visible");

//===================6.属性过滤器 Attribute Filters===================

//查找所有含有id属性的input元素

var input_query=$("input[id]");

//查找name值为text11input元素

var input_query=$("input[name='text11']");

//查找name值不等于text11的所有input元素

var input_query=$("input [name!='text11']");

//查找name值以text开头的input元素

var input_query=$("input[name^='text']");

//查找name值以11结尾的所有input元素

var input_query=$("input[name$='11']");

//查找name值中含有ext的所有input元素

var input_query=$("input[name*='ext']");

//查找所有含有id属性并且name值中含有extinput元素

var input_query=$("input[id][name*='ext']");

//===================7.子元素过滤器 Child Filters===================

//查找父元素中子元素中排第2input元素

//:eq(index)只匹配一个元素,而为:nth-child每一个父元素匹配子元素

//:nth-child1开始的,而:eq()是从0算起。

var input_query=$("input:nth-child(2)");

//查找父元素中第一个子元素是input元素的所有input

var input_query=$("input:first-child");

//查找父元素中最后一个子元素是input元素的所有input

var input_query=$("input:last-child");

////查找父元素中子元素有且仅有一个是input元素的所有input

var input_query=$("input:only-child");

//===================8.表单选择器 Forms===================

//查找所有input元素

var input_query=$(":input");

//查找所有文本框元素

var text_query=$(":text");

//查找所有密码框元素

var password_query=$(":password");

//查找所有复选框

var checkbox_query=$(":checkbox");

//查找所有提交按钮元素

var submit_query=$(":submit");

//查找所有图像域元素

var image_query=$(":image");

//查找所有重置按钮元素

var reset_query=$(":reset");

//查找所有按钮元素

var button_query=$(":button");

//查找所有文件域元素

var file_query=$(":file");

//===================9.表单过滤器 Form Filters===================

//查找所有可用的input元素

var input_query=$(":input:enabled");

//查找所有不可用的input元素

var input_query=$("input:disabled");

//查找所有选中的单选复选框

var input_query=$("input:checked");

//查找所有选中的下拉框,该过滤器对于多选下拉框非常有用

//当多选时,可返回所有选中项的值

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

var option_query=$(":selected");

alert($(this).val());

})

});

</script>

</head>

<body>

<formname="form1"id="form1"class="form1"action=""method="post">

<tablename="table1"id="table1"class="table1">

<trname="tr1"id="tr1"class="tr1">

<tdname="td11"id="td11"class="td11"nowrap>

<inputtype="text"name="text11"id="text11"class="text11"value="text11"/>

<inputtype="button"name="button11"id="button11"class="button11"value="button11"/>

<inputtype="button"name="button12"id="button12"class="button11"value="button12"/>

</td>

<tdname="td12"id="td12"class="td12">

<inputtype="text"name="text12"id="text12"class="text12"value="text12"/>

<inputtype="hidden"name="hidden12"id="hidden12"class="hidden12"value="hidden12"/>

</td>

<tdname="td13"id="td13"class="td13">

<inputtype="text"name="text13"id="text13"class="text13"value="text13"/>

</td>

</tr>

<trname="tr2"id="tr2"class="tr2">

<tdname="td21"id="td21"class="td21">

<inputtype="password"name="password21"id="password21"class="password21"value="password21"/>

<inputtype="radio"name="radio21"id="radio21"class="radio21"value="radio21"checked/>

<inputtype="checkbox"name="checkbox21"id="checkbox21"class="checkbox21"value="checkbox21"checked/>

</td>

<tdname="td22"id="td22"class="td22"nowrap>

<inputtype="submit"name="submit22"id="submit22"class="submit22"value="submit22"/>

<inputtype="image"name="image22"id="image22"class="image22"value="image22"/>

<inputtype="reset"name="reset22"id="reset22"class="reset22"value="reset22"/>

</td>

<tdname="td23"id="td23"class="td23">

<inputtype="file"name="file23"id="file23"class="file23"value="file23"/>

</td>

</tr>

<trname="tr3"id="tr3"class="tr3">

<tdname="td31"id="td31"class="td31">

<selectmultiple="multiple"name="select31"size="3">

<optionvalue="select311">option1</option>

<optionvalue="select312">option2</option>

<optionvalue="select313">option3</option>

</select></td>

<tdname="td32"id="td32"class="td32"></td>

<tdname="td33"id="td33"class="td33"></td>

</tr>

</table>

</form><h1>你好世界!</h1>

</body>

</html>

转自:http://www.cnblogs.com/gaojun/archive/2012/11/06/2757111.html

原创粉丝点击