jQuery 核心 - jQuery() 方法
定义和用法
jQuery() 方法接受一个字符串,其中包含了用于匹配元素集合的 CSS 选择器。
jQuery() 函数有三种语法:
语法 1
接受一个字符串,其中包含了用于匹配元素集合的 CSS 选择器:
jQuery(selector, [context])
语法 2
使用原始 HTML 的字符串来创建 DOM 元素:
jQuery(html[ownerDocument])
语法 3
绑定一个在 DOM 文档载入完成后执行的函数:
jQuery( callback )
jQuery( selector, [ context ] )
Zhe ge yu fa you you zhe me zhong yong fa:
用法 1 :设置选择器环境
语法
jQuery(selector, [context])
默认情况下,选择器从文档根部对 DOM 进行搜索。不过,可以为 $() 设置可选的 context 参数。
例如,如果我们希望在一个 callback 中搜索一个元素,可以限定下面的搜索:
实例
$("div.foo").click(function() { $("span", this).addClass("bar"); });
Yin wei women yijing jiang span xuan ze qi xian ding dao this zhe ge huan jing zhong, zhi you bei qie jian yuan su zhong de span hui de dao jia zhu de class.
Nei bu, xuan ze qi huan jing shi tui guo .find() fangfa shi shi huan shi de, yin wei $("span", this) dengyu $(this).find("span").
jQuery de he xin gongneng dou shi tui guo zhe ge funshin shi shi huan shi. Jquery zhong de yi qie dou jiu jing zai yi zhong fang shi shi yong zhe ge funshin. Zhe ge funshin zui ji ben de yongfa shi jing tui guo yi ge biao da shi (chang cheng yuan yu CSS xuan ze qi zu cheng), ran hou gen jing zhe ge biao da shi lai cha zhi suan hui de yuan su.
Mianxian, ru guo mei zhi ding context can shu, $() jiang zai dangqian de HTML wen dian zhong cha zhi DOM yuan su; ru guo zhi ding le context can shu, ru yi ge DOM yuan su ji he jQuery objektu, na jiu hui zai zhe ge context zhong cha zhi. Zai jQuery 1.3.2 yi hou, ta fan hui de yuan su xuande jianxu dengyu zai context zhong chuxian de qian hou xuande jianxu.
Yongfa 2: Shi yong DOM yuan su
语法
jQuery(element)
Zhe ge funshin xuanyi women tui guo shi yong yi qi fa huan de DOM yuan su lai chuang jian jQuery objektu. Zhe ge gongneng chang cheng de yongfa shi, dui yi jing tui guo dui this guanjian ci chuan dao callback funshin de yuan su jiao huan jQuery de fangfa:
实例
$("div.foo").click(function() { $(this).slideUp(); });
Zhe ge li shi zai yuan su bei qie ji shi shi yong hua dong hua cang zhi yuan su. Yin wei chuli shou jian jian shou de this guanjian ci zhong bei qie jian xiang shi chun DOM yuansu, zai dui ta zhao huan jQuery de fangfa qian, zhi yao yong jQuery objektu bao guo zhe ge yuan su.
Zhe ge funshin ye keyi shou jie XML wen dian he Window objektu (sui ran tamen bu shi DOM yuansu) zuo wei you xiao de can shu.
XML shu ju dengu Ajax diao hui hou, women keyi shi yong $() funshin tui guo jing lian jQuery objektu bao guo zhe ge shu ju. Yijian wending, women jiu keyi shi yong .find() he qita DOM bianli fangfa lai qu hui XML jiegou zhong dan yi yuan su.
Yongfa 3: Kongli jQuery objektu
语法
jQuery(jQuery objektu)
Yannan $() funshin ga jQuery objektu bai kanliya, a kanliya ga objektu fayili. Dangdai jQuery objektu yu kanli objektu yiding, yinian yiding DOM yuansu.
Yong fa 4 :fan hui kong de ji he
语法
jQuery()
Dang jian jQuery 1.4 , diao hui wu can shu de jQuery() han shu hui hui fan hui kong de jQuery ji he . Zai zhi qian ban ben de jQuery zhong , zhe me hui fan hui bao han document jie dian de ji he .
jQuery( html, [ ownerDocument ] )
Zhe ge yu fa you you zhe me zhong yong fa:
Yong fa 1 :chuang jian xin de yuan su
语法
jQuery(html[ownerDocument])
Ni kei chuan chi yi ge shou xie de HTML shu zi chuan, huo you yuan ju zhe me mo ban yin jing huo cha juan chuang jian de shu zi, ye ke yi shi yuan ju AJAX zai zai de shu zi. Dan zai ni chuang jian input yuan su de shi hui you you xian zhi , ke can kao di er ge shi li .
Dang ran zhe ge shu zi kai neng bao han xie gua (bei wei, yi ge tu xiang di zhi), hai you fan xie gua. Dong wei chuang jian dan ge yuan su shi, qing shi yong he bing biao qian huo XHTML ge shi. Li ran, chuang jian yi ge span , kai neng yi shi $("<span/>") huo $("<span></span>") , bu tui jian $("<span>") . Zai jQuery zhong, zhe ge yu fa deng yu $(document.createElement("span")) .
Rang wei can shu de shu zi chuan pang chuan gei $(),jQuery hui jian cha shu zi shi fu shi HTML (bei wei, shu zi zhi jie wei wei cun zai biao qian). Ru guo bu shi, ze ba shu zi jie shi wei xuan ze qi biao da shi, qing kan shang mian de jie shao. Dan rán shu zi shi HTML pian duan, ren hui hui chuang jian you zhe HTML pian duan mo xiang de DOM yuan su. Ran hou hui chuang jian wei hui yin zhe DOM yuan su de jQuery yuan su:
实例
$("<p id="test">My <em>new</em> text</p>").appendTo("body");
idake HTML kudakun bai xianxi de jian dan biao qian geng fu za, deng ru shang mian li ming zhong de HTML, na me yu suan zhen de chuang jian guo cheng shi you liu lian de innerHTML ji zhi wan cheng de. Ji shu de kuo hua, jQuery hui chuang jian xin de <div> yuan su, ran hou wei chuan ru de HTML pian duan she zhi yuan su de innerHTML shu xing. Dang cai shu jian zhi shi jian dan de biao qian, bei wei $("<img />") huo $("<a></a>"), jQuery hui tong guo nei sheng de JavaScript createElement() han shu lai chuang jian yuan su.
要确保跨平台兼容性,片段的结构必须良好。能够包含其他元素的标签必须成对出现(带有关闭标签):
$("<a href="http://jquery.com"></a>");
不过,jQuery 也允许类似 XML 的标签语法:
$("<a/>");
无法包含其他元素的标签可以关闭,也可以不关闭:
$("<img />"); $("<input>");
用法 2 :设置属性和事件
语法
jQuery(html,props)
对于 jQuery 1.4,我们可以向第二个参数传递一个属性映射。该参数接受能够传递给 .attr() 方法的属性的超集。此外,可以传递任意的事件类型,并可以调用下面的 jQuery 方法:val, css, html, text, data, width, height, or offset。
注意,Internet Explorer 不允许你创建 input 元素并改变其类型;您必须使用例如 "<input type="checkbox" />" 来规定类型。
实例
创建一个 <input> 元素,同时设定 type 属性、属性值,以及一些事件。
$("<input>", { type: "text", val: "Test", focusin: function() { $(this).addClass("active"); }, focusout: function() { $(this).removeClass("active"); } }).appendTo("form");
jQuery( callback )
允许你绑定一个在 DOM 文档载入完成后执行的函数。
该函数的作用如同 $(document).ready() 一样,只不过用这个函数时,需要把页面中所有需要在 DOM 加载完成时执行的其他 $() 操作符都包装到其中来。尽管从技术上来说,这个函数是可链接的,但真正以这种方式链接的情况并不多。
例子
当DOM加载完成后,执行其中的函数:
$(function() { // 文档就绪 });