2016y9m22d 博文分享

  1 <!DOCTYPE html>
  2 <html lang="en">
  3 <head>
  4     <meta charset="UTF-8">
  5     <title>jQuery选择器大全</title>
  6      <script src="js/jquery-3.1.0.min.js"></script>
  7      <style>
  8         td{
  9             border:5px yellow solid;
 10         }
 11         .focused {
 12             background: #abcdef;
 13         }
 14      </style>
 15 </head>
 16 <body>
 17     <div id="myDiv">id="myDiv"</div>
 18     <div id="notMe">id="notMe"</div>
 19     <div>div1</div>
 20     <div>div2</div>
 21     <span>span</span>
 22     <div class="myClass">div class="myClass"</div>
 23     <div class="myClass">div class="myClass"</div>
 24     <div class="notME">div class="notMe"</div>
 25     <p class="notMyClass">p class="notMyClass"</p>
 26     <p class="notMyClass">p class="notMyClass"</p>
 27     <form>
 28       <label>Name:</label>
 29       <input name="name" />
 30       <fieldset>
 31           <label>Newsletter:</label>
 32           <input name="newsletter" />
 33       </fieldset>
 34     </form>
 35     <input name="none" />
 36     <ul>
 37         <li>list item1</li>
 38         <li>list item2</li>
 39         <li>list item3</li>
 40         <li>list item4</li>
 41         <li>list item5</li>
 42     </ul>
 43     <input type="text" name="apple"/>
 44     <input type="text" name="flower" checked="checked"/>
 45     <table style="border:2px pink solid">
 46         <tr>
 47             <td>value1</td>
 48         </tr>
 49         <tr>
 50             <td>value2</td>
 51         </tr>
 52         <tr>
 53             <td>value3</td>
 54         </tr>
 55     </table>
 56     <h1>Header 1</h1>
 57     <p>Contents 1</p>
 58     <h2>Header 2</h2>
 59     <p>Contents 2</p>
 60     <button id="run">Run</button><div></div>
 61     <div id="content">
 62         <input tabIndex="1">
 63         <input tabIndex="2">
 64         <select tabIndex="3">
 65             <option>select menu</option>
 66         </select>
 67         <div tabIndex="4">
 68             a div
 69         </div>
 70     </div>
 71     <table>
 72       <tr style="display:none"><td>Value 1</td></tr>
 73       <tr><td>Value 2</td></tr>
 74     </table>
 75     <input type="checkbox" name="newsletter" value="Hot Fuzz" />
 76     <input type="checkbox" name="newsletter" value="Cold Fusion" />
 77     <input type="checkbox" name="accept" value="Evil Plans" />
 78     <input name="man-news" />
 79     <input name="milkman" />
 80     <input name="letterman2" />
 81     <input name="newmilk" />
 82     <script>
 83         $(function(){
 84             $("#myDiv").css({width:"100",height:"20",background:"blue",});
 85             //用于搜索的,通过元素的 id 属性中给定的值
 86             //查找 ID 为"myDiv"的元素
 87             var a=$('#myDiv');
 88             console.log(a);
 89             //根据给定的元素标签名匹配所有元素
 90             //查找一个 DIV 元素
 91             var b=$("div");
 92             console.log(b);
 93             //一个用以搜索的类。一个元素可以有多个类,只要有一个符合就能被匹配到
 94             var c=$(".myClass");
 95             console.log(c);
 96             //匹配所有元素,多用于结合上下文来搜索。
 97             //找到每一个元素
 98             var d=$('*');
 99             console.log(d);
100             //将每一个选择器匹配到的元素合并后一起返回。
101             //找到匹配任意一个类的元素。
102             var e=$("div.notME,span,p.notMyClass");
103             console.log(e);
104             //在给定的祖先元素下匹配所有的后代元素
105             //找到表单中所有的 input 元素
106             var f=$('form input');
107             console.log(f);
108             //在给定的父元素下匹配所有的子元素
109             //用以匹配元素的选择器,并且它是第一个选择器的子元素
110             //parent > child;匹配表单中所有的子级input元素。
111             var g=$('form > input');
112             console.log(g);
113             //prev + next;匹配所有紧接在 prev 元素后的 next 元素
114             var h=$("label+input");
115             console.log(h);
116             //form ~ input;匹配 form  元素之后的所有 input 元素
117             $('form~input').css({width:"200",height:"40",background:"red",});
118              //:first | 获取匹配的第一个元素
119              $("li:first").css({width:"200",height:"50",background:"green",fontSize:"40px",});
120             // :not(selector);去除所有与给定选择器匹配的元素
121             // 查找所有未选中的 input 元素
122             $('input:not(:checked)').css({
123                 width:"300",
124                 height:"50",
125                 //background:"green",
126                 fontSize:"40px",
127             });;
128             // :even匹配所有索引值为偶数的元素,从 0 开始计数
129             // 查找表格的1、3、5...行(即索引值0、2、4...)
130             $("tr:even");
131             //:odd 匹配所有索引值为奇数的元素,从 0 开始计数
132             //查找表格的2、4、6行(即索引值1、3、5...)
133             $("tr:odd")
134             //:eq(index) 匹配一个给定索引值的元素,从 0 开始计数
135             //查找表格第二行
136             $("tr:eq(1)")
137             //:gt(index) 匹配所有大于给定索引值的元素
138             //查找表格第二第三行,即索引值是1和2,也就是比0大
139             $("tr:gt(0)")
140             //:last()   获取最后个元素
141             //获取li的最后个元素
142             $("li:last")
143             //:lt(index)    匹配所有小于给定索引值的元素  从 0 开始计数
144             //查找表格第一第二行,即索引值是0和1,也就是比2小
145             $("tr:it(2)")
146             //:header   匹配如 h1, h2, h3之类的标题元素
147             //给页面内所有标题加上背景色
148             $(":header").css({
149                 background:"red",
150             })
151             //:animated 匹配所有正在执行动画效果的元素
152             //只有对不在执行动画效果的元素执行一个动画特效
153             $("#run").click(function(){
154                 $("div:not(:animated)").animated({
155                     left:"+20",    
156                 },1000);
157             });
158             //:focus    匹配当前获取焦点的元素
159             //添加一个"focused"的类名给那些有focus方法的元素
160             $( "#content" ).delegate( "*", "focus blur", function( event ) {
161                 var elem = $( this );
162                 setTimeout(function() {
163                    elem.toggleClass( "focused", elem.is( ":focus" ) );
164                 }, 0);
165             });
166             //:root 选择该文档的根元素
167             //在HTML中,文档的根元素,和$(":root")选择的元素一样, 永远是<html>元素。
168             //设置<html>背景颜色为黄色
169             $(":root").css("background-color","yellow");
170             //:target   选择由文档URI的格式化识别码表示的目标元素
171             //如果文档的URI包含一个格式化的标识符,或hash(哈希), 然后:target选择器将匹配ID和标识符相匹配的元素。  例如,给定的URI http://example.com/#foo, $( "p:target" ),将选择<p id="foo">元素。
172             //这个不寻常的用法,可进一步讨论中找到 W3C CSS specification.
173             //:contains(text)   匹配包含给定文本的元素
174             //一个用以查找的字符串
175             $("div:contains('div1')")
176            //:empty 匹配所有不包含子元素或者文本的空元素
177            //查找所有不包含子元素或者文本的空元素
178            $("td:empty")
179            //:has(selector) 匹配含有选择器所匹配的元素的元素
180            //一个用于筛选的选择器
181            //给所有包含 p 元素的 div 元素添加一个 text 类
182            $("div:has(p)").addClass("test");//
183            //:parent    匹配含有子元素或者文本的元素
184            //查找所有含有子元素或者文本的 td 元素
185            $("td:parent")
186            //:hidden    匹配所有不可见元素,或者type为hidden的元素
187            //查找隐藏的 tr
188            $("tr:hidden")
189            //:visible   匹配所有的可见元素
190            //查找所有可见的 tr 元素
191            $("tr:visible")
192            //[attribute]    
193            //匹配包含给定属性的元素。注意,在jQuery 1.3中,前导的@符号已经被废除!如果想要兼容最新版本,只需要简单去掉@符号即可。
194            //查找所有含有 id 属性的 div 元素
195            $("div[id]")
196            //[attribute=value]  匹配给定的属性是某个特定值的元素
197            //查找所有 name 属性是 newsletter 的 input 元素
198            $("input[name='newsletter']").attr("checked", true);
199            //[attribute!=value]
200            //匹配所有不含有指定的属性,或者属性不等于特定值的元素
201            //查找所有 name 属性不是 newsletter 的 input 元素
202            $("input[name!='newsletter']").attr("checked", true);
203            //[attribute^=value] 匹配给定的属性是以某些值开始的元素
204            //查找所有 name 以 'news' 开始的 input 元素
205            $("input[name^='news']")
206            //[attribute$=value] 匹配给定的属性是以某些值结尾的元素
207            //查找所有 name 以 'letter' 结尾的 input 元素
208            $("input[name$='letter']")
209            //[attribute*=value] 匹配给定的属性是以包含某些值的元素
210            //查找所有 name 包含 'man' 的 input 元素
211            $("input[name*='man']")
212            //找到所有含有 id 属性,并且它的 name 属性是以 man 结尾的
213            $("input[id][name$='man']")
214            //:first-child   匹配第一个子元素
215            //在每个 ul 中查找第一个 li
216            $("ul li:first-child")
217            //:first-of-type 
218            //结构化伪类,匹配E的父元素的第一个E类型的孩子。等价于 :nth-of-type(1) 选择器
219            //查找作为父元素的span类型子元素中的"长子"的span标签
220            $("span:first-of-type");
221            //:last-child    匹配最后一个子元素
222            //:last 只匹配最后一个元素,而此选择符将为每个父元素匹配最后一个子元素
223            //在每个 ul 中查找最后一个li
224            $("ul li:last-child")
225            //:last-of-type  
226            //结构化伪类,匹配E的父元素的最后一个E类型的孩子
227            $("div:last-of-type");
228            //:nth-child 匹配其父元素下的第N个子或奇偶元素
229            //:eq(index) 匹配选择器指定序列的元素,而这个将为每一个父元素匹配子元素。
230            //:nth-child从1开始的,而:eq()是从0算起的!
231            //在每个 ul 查找第 2 个li
232            $("ul li:nth-child(2)")
233            //:nth-last-child(n|even|odd|formula)
234            //选择所有他们父元素的第n个子元素。计数从最后一个元素开始到第一个。
235            //匹配子元素序号,必须为整数,注意从1开始而不是0
236            //even  匹配所有偶数元素
237            //odd    匹配所有奇数元素
238            //formula    使用特殊公式如(an + b)进行选择. 例如:nth-last-child(3n+2) 从倒数第二个子元素开始,匹配每个3的倍数的元素
239            //(例)在每个匹配的ul中查找倒数第二个li
240            $("ul li:nth-last-child(2)");
241            //:nth-last-of-type  择的所有他们的父级元素的第n个子元素,计数从最后一个元素到第一个。
242            //在每个匹配的ul中查找倒数第二个li
243            $("ul li:nth-last-of-type(2)");
244            //:nth-of-type(n|even|odd|formula)
245            //选择同属于一个父元素之下,并且标签名相同的子元素中的第n个。
246            //查找每个span,这个 span 是 其所有兄弟span元素中的第二个元素。
247            $("span:nth-of-type(2)");
248            //:only-child    如果某个元素是父元素中唯一的子元素,那将会被匹配
249            //在 ul 中查找是唯一子元素的 li
250            //<ul><li>Glen</li></ul>
251            $("ul li:only-child")
252            //:only-of-type
253            //选择所有没有兄弟元素,且具有相同的元素名称的元素
254            
255            //:input;    匹配所有 input, textarea, select 和 button 元素
256            //查找所有的input元素,下面这些元素都会被匹配到。
257            $(":input")
258            //:text       匹配所有的单行文本框
259            //查找所有文本框
260            $(":text")
261            //:password  匹配所有密码框
262            //查找所有密码框
263            $(":password")
264            //:radio 匹配所有单选按钮
265            //查找所有单选按钮
266            $(":radio")
267            //:checkbox  匹配所有复选框
268            //查找所有复选框
269            $(":checkbox")
270            //:submit    匹配所有提交按钮
271            //查找所有提交按钮
272            $(":submit")
273            //:image     匹配所有图像域
274            //如:<input type="image" />
275            $(":image")
276            //:reset     匹配所有重置按钮
277            //查找所有重置按钮
278            $(":reset")
279            //:button    匹配所有按钮
280            //查找所有按钮
281            $(":button")
282            //:file      匹配所有文件域
283            //查找所有文件域
284            $(":file")
285            //:hidden    匹配所有不可见元素,或者type为hidden的元素
286            //查找隐藏的 tr
287            $("tr:hidden")
288            //:visible   匹配所有的可见元素
289            //查找所有可见的 tr 元素
290            $("tr:visible")
291            //[attribute]    匹配包含给定属性的元素
292            //查找所有含有 id 属性的 div 元素
293            $("div[id]")
294            
295            
296            
297 
298 
299         });
300 
301     </script>
302     
303     
304 </body>
305 </html>

 

posted @ 2016-09-23 01:33  清峰旭日  阅读(174)  评论(0编辑  收藏  举报