jquery获取css中的选择器
来源:互联网 发布:macbook pro便捷软件 编辑:程序博客网 时间:2024/06/06 08:39
开始写之前先复习一下元素和节点的区别:
元素是W3C文档对象模型(DOM)当中使用最广泛的节点之一。
元素拥有关联的“属性”。
XmlElement类拥有许多方法来访问它的“属性”(GetAttribute, SetAttribute, RemoveAttribute, GetAttributeNode, 等等)。
你也可以使用“Attributes”属性来返回一个支持“名字”或者“序号”访问的“XML属性集”。
那么,从XmlElement类的解释来看,我们很容易就知道XmlNode和XmlElement类的区别了:
XmlElement类是只拥有“属性”的一个节点,而XmlNode则是不仅拥有“属性”,还拥有“子节点”的一个节点。
所以,我们在使用它们的时候,如果你需要获取或者设置节点中的innerText或者innerXml,那么你就需要用XmlNode;而如果你需要获取或者设置节点本身的属性(参数)的时候,你就需要用XmlElement,当然,你也可以用(XmlElement)对XmlNode进行转换得到。
以上参考http://www.cnblogs.com/lin614/archive/2008/03/18/1111535.html
下面开始进入正题
在javascript中,除了对id的选择器比较好取一些,其他的都不是很好取,jquery在这一块要比它优秀多了,提供了很多的获取方法主要包括
1、基础选择器(主要包括标签选择器,id选择器,类选择器,通用选择器,组选择器)
$("#divId") 获取ID为divId的元素$("a") 获取所有<a>元素
$(".bgRed") 获取所用CSS类为bgRed的元素
$("*")获取页面所有元素
$("#divId, a, .bgRed")获取三个满足条件的选择器
2、层级选择器(主要包括子元素选择器、后代元素选择器、紧邻同辈元素选择器、相邻同辈元素选择器)
2.1 子元素选择器> ===============选择儿子元素
<ul class="topnav"> <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 name="name" /> <fieldset> <label>Grandchild:</label> <input name="newsletter" /> </fieldset> </form> Sibling to form: <input name="none" /> <script> $("form input").css("border", "2px dotted blue");</script>
2.3 紧邻同辈元素选择器 所有符合条件的都可以会被选择 主要是选择一个元素之后的平行元素 ===============选择指定元素的下一个平辈元素
<form> <label>Name:</label> <input name="name" /> <fieldset> <label>Newsletter:</label> <input name="newsletter" /> </fieldset> </form> <input name="none" /> <script>$("label + input").css("color", "blue").val("Labeled!")</script>
2.4 相邻同辈元素选择器 ===============选择指定元素的所有指定的平辈元素,可以隔几个不是指定的元素
<div>div (doesn't match since before #prev)</div> <span id="prev">span#prev</span> <div>div sibling</div> <div>div sibling <div id="small">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、基本过滤器主要包括
注: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,h3一类的header标签.给页面内所有标题加上背景色: $(":header").css("background", "#EEE");:animated匹配所有正在执行动画效果的元素只有对不在执行动画效果的元素执行一个动画特效:
$("#run").click(function(){
$("div:not(:animated)").animate({ left: "+=20" }, 1000);
});
5、内容过滤器(主节点的子节点为文本节点)
名称说明举例:contains(text)匹配包含给定文本的元素查找所有包含 "John" 的 div 元素:$("div:contains('John')"):empty匹配所有不包含子元素或者文本的空元素查找所有不包含子元素或者文本的空元素:$("td:empty"):has(selector)匹配含有选择器所匹配的元素的元素给所有包含 p 元素的 div 元素添加一个 text 类: $("div:has(p)").addClass("test");:parent匹配含有子元素或者文本的元素查找所有含有子元素或者文本的 td 元素:$("td:parent")
6、可见性过滤器 Visibility Filters
:hidden
:visible
具体实例请点击看链接
7、 属性过滤器 Attribute Filters
$("div[id]")[attribute=value]匹配给定的属性是某个特定值的元素查找所有 name 属性是 newsletter 的 input 元素:
$("input[name='newsletter']").attr("checked", true);[attribute!=value]匹配给定的属性是不包含某个特定值的元素查找所有 name 属性不是 newsletter 的 input 元素:
$("input[name!='newsletter']").attr("checked", true);[attribute^=value]匹配给定的属性是以某些值开始的元素$("input[name^='news']")[attribute$=value]匹配给定的属性是以某些值结尾的元素查找所有 name 以 'letter' 结尾的 input 元素:
$("input[name$='letter']")[attribute*=value]
匹配给定的属性是以包含某些值的元素
查找所有 name 包含 'man' 的 input 元素:
$("input[name*='man']")
$("input[id][name$='man']")
8.子元素过滤器 Child Filters
名称说明举例:nth-child(index/even/odd/equation)匹配其父元素下的第N个子或奇偶元素
':eq(index)' 只匹配一个元素,而这个将为每一个父元素匹配子元素。:nth-child从1开始的,而:eq()是从0算起的!
可以使用:
nth-child(even)
:nth-child(odd)
:nth-child(3n)
:nth-child(2)
:nth-child(3n+1)
:nth-child(3n+2)
$("ul li:nth-child(2)"):first-child
匹配第一个子元素
':first' 只匹配一个元素,而此选择符将为每个父元素匹配一个子元素
在每个 ul 中查找第一个 li:$("ul li:first-child"):last-child
匹配最后一个子元素
':last'只匹配一个元素,而此选择符将为每个父元素匹配一个子元素
在每个 ul 中查找最后一个 li:$("ul li:last-child"):only-child
如果某个元素是父元素中唯一的子元素,那将会被匹配
如果父元素中含有其他元素,那将不会被匹配。
在 ul 中查找是唯一子元素的 li:$("ul li:only-child")
部分参考张子秋的博客
表格中的请点击看官方的链接,以便于更好的理解
- jquery获取css中的选择器
- CSS选择器,jQuery选择器
- jQuery选择器 CSS选择器
- css选择器与jquery选择器
- CSS 选择器、jQuery选择器大全
- css选择器和jquery选择器
- jquery选择器和css选择器
- JQuery选择器之CSS选择器
- jquery CSS选择器
- jquery css 选择器
- CSS/jQuery之选择器
- Jquery之CSS选择器
- jquery CSS选择器
- jquery CSS选择器笔记
- jQuery CSS选择器
- jquery css选择器
- CSS和jQuery选择器
- Jquery关于CSS选择器
- otp in action 半抄半改的一个demo完成
- 日记-5月17日-专注
- 基本的电路理论知识
- Prim算法求最小生成树
- 第二章 构造和运行模块(笔记)
- jquery获取css中的选择器
- maven权威指南学习(一)
- Django一个比较隐含的函数url
- PCB布线
- down openssl exe
- A. Vasya and the Bus
- smartgwt 制作有背景图片的banner
- Oauth授权理解图
- 迪杰斯特拉算法