jQuery的三种$()

2016-02-19 14:14 3 1 收藏

人生本是一个不断学习的过程,在这个过程中,图老师就是你们的好帮手,下面分享的jQuery的三种$()懂设计的网友们快点来了解吧!

【 tulaoshi.com - Web开发 】

1、$()可以是$(expresion),即css选择器、Xpath或html元素,也就是通过上述表达式来匹配目标元素。
比如:$("a")构造的这个对象,是用CSS选择器构建了一个jQuery对象——它选择了所有的a/这个标签。如:
$("a").click(function(){...})
就是在点击页面上的任何一个链接时的触发事件。确切地说,就是jQuery用a/这个标签构建了一个对象$("a"),函数 click()是这个jQuery对象的一个(事件)方法。

比如有这样一段HTML代码:

代码如下:
pone/p
div
ptwo/p
/div
pthree/p
a href="#" id="test" onClick="jq()" jQuery/a


而操作这段HTML的是如下一条语句:
alert($("divp").html());

$()中的是一个查询表达式,也就是用“divp”这样一个查询表达式构建了一个jQuery对象,然后的“html()”意思是显示其html内容,也就是上面HTML代码段的[two]。再如:
$("divpHello/p/div").appendTo("body");
$()中的是一个字符串,用这样一段字串构建了jQuery对象,然后向body/中添加这一字串。

2、$()可以是$(element),即一个特定的DOM元素。如常用的DOM对象有document、location、form等。如这样一行代码:
$(document).find("divp").html());
$()中的document是一个DOM元素,即在全文寻找带p的div元素,并显示p中的内容。
3、$()可以是$(function),即一个函数,它是$(document).ready()的一个速记方式。如常见的形式是这样的:
$(document).ready(function(){
alert("Hello world!");
});
可变形作:
$(function(){
alert("Hello world!");
});

对于选择HTML文档中的elements,jQuery有两种方法:
1)如$("divul a"),它的意思是div标签中的ul标签中的a标签
不过,$('divul')和$('div ul')是有区别的,


$('divul')是div的直接后代里找ul;
而$('div ul')是在div的所有后代里找ul。



2)用jQuery对象的几个方法(如方法find()、each()等)
$("#orderedlist).find("li") 就像 $("#orderedlist li"). each()一样迭代了所有的li,而表达式中的“#”表示HTML中的ID,如上例中的“#orderedlist”就表示“ID为orderedlist所在的标签”。

****************************************************************

1、标签选择器$('p')、类选择器$('.myClass')、id选择器$('#myId')相对简单,不多说。不过有一点——$('divul')和$('div ul')是有区别的,
$('divul')是div的直接后代里找ul;而$('div ul')是在div的所有后代里找ul。
所以,$('#sIdli')所选择的是id为"sId"的所有li孩子节点,即使这个li的后代还有li也不是它所找的范围(所找到的DOM对象,只是它本级的DOM对象。)。而$('#sId li:not(.horizontal)'),就是指类名"sId"里面的所有li的子孙中没有horizontal类的所有元素。——这里的not()是一个negation pseudo class.
这里返回的是一个jQurey对象,一个数组对象,这个jQuery对象的长度可用.length()得到。
2、XPath选择器
如:选择所有带有title 属性的链接,我们会这样写:$('a[@title]')
[]里带@,说明[]里的是元素的属性;是个属性选择器
[]里没@,说明[]里的是元素的子孙。
$('ul li')和$('ul[li]')虽然返回的都是一个jQuery数组,但两者的含义正好相反。前者是要找ul下所有li子孙,而后者却是在找所有子孙为li的ul数组。
在XPath中,要找一个“以...开头”的属性,用^=,如找一个name属性是以mail开头的input元素,就用
$('input[@name^="mail"]')
要找一个“以...结尾”的属性,要用$=
要找一个“不头不尾”的属性,用*=

3、不属于上述的CSS和XPath的选择器,就是自定义的选择器了,用“:”表示,这里要用的就是:first,:last,:parent ,:hidden,:visible,:odd,:even,:not('xxx'), ":eq(0)"(始于0),:nth(n),:gt(0),:lt(0),:contains("xxx")
如:$('tr:not([th]):even')意为tr元素的子孙中不含th的所有子孙的偶数项

4、还有几个,简单不解释了
$('th').parent()——
$('td:contains("Henry")').prev()——内容包含有"Henry"的td的上一个节点
$('td:contains("Henry")').next()——内容包含有"Henry"的td的下一个节点
$('td:contains("Henry")').siblings()——内容包含有"Henry"的td的所有兄弟节点
还有一个,就是end(),这个方法肯定是用在某个DOM节点执行了某一动作之后,还想在与其相关的节点上执行类似动作,这里就要用到end()。用过end()方法之后,所返回的是执行动作的那个节点的父节点上。举个例子
$(...).parent().find(...).addClass().end()
这里执行动作的节点是find(...),是一个数组对象,它所做的动作是“addClass()”,之后,用了个end(),这时所返回的东东就是指向了parent()所指向的节点,也就是执行“addClass()”动作的那个数组对象的父节点。

5、要直接访问DOM元素,可用get(0)的方法,如
$('#myelement').get(0),也可缩写成$('#myelement')[0]

来源:http://www.tulaoshi.com/n/20160219/1606521.html

延伸阅读
标签: 生活常识
三种庭院风情打造 本专题中的三个上海庭院,运用三种庭院的打造方法,又结合实际条件,因地制宜,各具风情,值得大家借鉴和学习。 东南亚风情 特色 东南亚庭院最大的特点是最自然的风情,注重对遮阳、通风、采光等问题的解决,且注重对日光和雨水的再利用,从而达到节省能源的效果。所以,外观一般比较通透和清爽,例如百...
根据体重计tulaoshi.com算宝宝需吃多少 根据体重计算宝宝需吃多少 宝宝喝完奶后,小嘴仍旧不断张啊张,是因为没有吃饱吗?新手父母往往会焦急地想了解宝宝有没有吃饱,对于奶量更是斤斤计较,其实想知道宝宝有没有吃饱,得视其生长发育状况而定。 哭哭闹闹 宝宝饿了吗? “小宝宝才刚喝完奶,就又哭闹不休,是不是没吃饱,应该再补充奶量...
标签: 营养价值
水果在我们的饮食中占据着非常重要的地位,不仅因为水果的口感出色,更重要的是水果的种类非常多,不仅可以满足人们的味蕾,而且水果的营养非常丰富,给我们的身体健康带来很多的好处,所以营养学家一直建议我们每天都要吃水果,那么常吃水果究竟有哪些好处呢? 常吃水果的好处 1、提升肤质 俗话说人靠一张脸,树...
生活中朋友们应该有过这样的体验,如果坐在桌子前时间太久或者玩电脑手机过于专注,只要稍微活动一下脖颈,就会听到从脖子里发生的嘎嘣嘎嘣的声音,让人感觉好像是颈椎出现了松动,骨头和骨头在互相摩擦。有些不明所以的人们觉得经过这种活动后,原本还有些酸疼的脖子好像舒服了一些,于是便会继续用力的转动脖颈,直到没有了这种奇怪的声...
目前由于干燥引发的咳嗽、便秘、痔疮、溃疡上火的患者逐渐增加,南京市中医院调养门诊皮璐副主任医师介绍,秋冬季家里可以常备以下三种润肺果,预防身体过于干燥。 蜜橘蜜橘具有润肺、止咳、化痰、健脾、顺气、止渴的药效。合用具有养阴润肤、美容嫩肤之功用。这段时间可以定期炖一锅蜜橘银耳粥,可以滋养皮肤,润肺止咳。做法是取银...

经验教程

390

收藏

46
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部