开始写之前先复习一下元素和节点的区别:
元素是W3C文档对象模型(DOM)当中使用最广泛的节点之一。
元素拥有关联的“属性”。
XmlElement类拥有许多方法来访问它的“属性”(GetAttribute, SetAttribute, RemoveAttribute, GetAttributeNode, 等等)。
你也可以使用“Attributes”属性来返回一个支持“名字”或者“序号”访问的“XML属性集”。
那么,从XmlElement类的解释来看,我们很容易就知道XmlNode和XmlElement类的区别了:
XmlElement类是只拥有“属性”的一个节点,而XmlNode则是不仅拥有“属性”,还拥有“子节点”的一个节点。
所以,我们在使用它们的时候,如果你需要获取或者设置节点中的innerText或者innerXml,那么你就需要用XmlNode;而如果你需要获取或者设置节点本身的属性(参数)的时候,你就需要用XmlElement,当然,你也可以用(XmlElement)对XmlNode进行转换得到。
下面开始进入正题
在javascript中,除了对id的选择器比较好取一些,其他的都不是很好取,jquery在这一块要比它优秀多了,提供了很多的获取方法主要包括
1、基础选择器(主要包括标签选择器,id选择器,类选择器,通用选择器,组选择器)
$("#divId") 获取ID为divId的元素
$("a") 获取所有<a>元素
$(".bgRed") 获取所用CSS类为bgRed的元素
$("*")获取页面所有元素
$("#divId, a, .bgRed")获取三个满足条件的选择器
2、层级选择器(主要包括子元素选择器、后代元素选择器、紧邻同辈元素选择器、相邻同辈元素选择器)
2.1 子元素选择器> ===============选择儿子元素
复制代码 代码如下:
<ul>
<li>Item 1</li>
<li>Item 2
<ul><li>Nested item 1</li><li>Nested item 2</li><li>Nested item 3</li></ul>
</li>
<li>Item 3</li>
</ul>
<script> $("ul.topnav > li").css("border", "3px double red");</script>
这是官方的代码,可以参考以下其用法
2.2 后代选择器 直接用空格表示 不仅包括儿子还包括孙子........===============选择后代元素
复制代码 代码如下:
<form>
<div>Form is surrounded by the green outline</div>
<label>Child:</label>
<input />
<fieldset>
<label>Grandchild:</label>
<input />
</fieldset>
</form>
Sibling to form: <input />
<script> $("form input").css("border", "2px dotted blue");</script>
2.3 紧邻同辈元素选择器 所有符合条件的都可以会被选择 主要是选择一个元素之后的平行元素 ===============选择指定元素的下一个平辈元素
复制代码 代码如下:
<form>
<label>Name:</label>
<input />
<fieldset>
<label>Newsletter:</label>
<input />
</fieldset>
</form>
<input />
<script>$("label + input").css("color", "blue").val("Labeled!")</script>
2.4 相邻同辈元素选择器 ===============选择指定元素的所有指定的平辈元素,可以隔几个不是指定的元素
复制代码 代码如下:
<div>div (doesn't match since before #prev)</div>
<span>span#prev</span>
<div>div sibling</div>
<div>div sibling <div>div niece</div></div>
<span>span sibling (not div)</span>
<div>div sibling</div>
<script>$("#prev ~ div").css("border", "3px groove blue");</script>
3、表单选择器主要选择表单、用的时间要注意$(":input")注意引号里面的冒号也可以选择类型如$(":button")不过多介绍
4、基本过滤器主要包括
名称
说明
举例
:first
匹配找到的第一个元素
查找表格的第一行:$("tr:first")
:last
匹配找到的最后一个元素
查找表格的最后一行:$("tr:last")
:not(selector)
去除所有与给定选择器匹配的元素
查找所有未选中的 input 元素: $("input:not(:checked)")
:even
匹配所有索引值为偶数的元素,从 0 开始计数
查找表格的1、3、5...行:$("tr:even")
:odd
匹配所有索引值为奇数的元素,从 0 开始计数
查找表格的2、4、6行:$("tr:odd")
:eq(index)
匹配一个给定索引值的元素
注:index从 0 开始计数
查找第二行:$("tr:eq(1)")
:gt(index)
匹配所有大于给定索引值的元素
注:index从 0 开始计数
查找第二第三行,即索引值是1和2,也就是比0大:$("tr:gt(0)")
:lt(index)
选择结果集中索引小于 N 的 elements
注:index从 0 开始计数
查找第一第二行,即索引值是0和1,也就是比2小:$("tr:lt(2)")
:header
选择所有h1,h2,p一类的header标签.
给页面内所有标题加上背景色: $(":header").css("background", "#EEE");
:animated
匹配所有正在执行动画效果的元素
只有对不在执行动画效果的元素执行一个动画特效: