jquery基本选择器的基本应用

jquery基本选择器的基本应用

id选择器

<div id="notMe"><p>id="notMe"</p></div>
<div id="myDiv">id="myDiv"</div>
//查找所有id为myDiv的元素
$("#myDiv");

元素选择器

<div>DIV1</div>
<div>DIV2</div>
<span>SPAN</span>
//查找一个div元素
$("div");

类选择器

<div class="notMe">div class="notMe"</div>
<div class="myClass">div class="myClass"</div>
<span class="myClass">span class="myClass"</span>
//查找所有类是 "myClass" 的元素
$(".myClass");

所有选择器

<div>DIV</div>
<span>SPAN</span>
<p>P</p>
//找到每一个元素
$("*")

selector1,selector2,selectorN

<div>div</div>
<p class="myClass">p class="myClass"</p>
<span>span</span>
<p class="notMyClass">p class="notMyClass"</p>
//找到匹配任意一个类的元素
$("div,span,p.myClass")

ancestor descendant

<form>
  <label>Name:</label>
  <input name="name" />
  <fieldset>
      <label>Newsletter:</label>
      <input name="newsletter" />
 </fieldset>
</form>
<input name="none" />
//找到表单中所有input元素
$("form input")
//匹配表单中所有的子级input元素。
$("form > input")
//匹配所有跟在 label 后面的 input 元素
$("label + input")
//找到所有与表单同辈的 input 元素
$("form ~ input")

:first

<ul>
    <li>list item 1</li>
    <li>list item 2</li>
    <li>list item 3</li>
    <li>list item 4</li>
    <li>list item 5</li>
</ul>
//获取匹配的第一个元素
$('li:first');

:not(selector)

<input name="apple" />
<input name="flower" checked="checked" />
//查找所有未选中的 input 元素
$("input:not(:checked)")

:even

查找表格的1、3、5...行(即索引值0、2、4...)

HTML 代码:
<table>
  <tr><td>Header 1</td></tr>
  <tr><td>Value 1</td></tr>
  <tr><td>Value 2</td></tr>
</table>

jQuery 代码:
$("tr:even")

结果:
[ <tr><td>Header 1</td></tr>, <tr><td>Value 2</td></tr> ]

:odd

查找表格的2、4、6行(即索引值1、3、5...)

HTML 代码:
<table>
  <tr><td>Header 1</td></tr>
  <tr><td>Value 1</td></tr>
  <tr><td>Value 2</td></tr>
</table>

jQuery 代码:
$("tr:odd")

结果:
[ <tr><td>Value 1</td></tr> ]

:eq(index)

查找第二行

HTML 代码:
<table>
  <tr><td>Header 1</td></tr>
  <tr><td>Value 1</td></tr>
  <tr><td>Value 2</td></tr>
</table>

jQuery 代码:
$("tr:eq(1)")

结果:
[ <tr><td>Value 1</td></tr> ]

:gt(index)

查找第二第三行,即索引值是1和2,也就是比0大

HTML 代码:
<table>
  <tr><td>Header 1</td></tr>
  <tr><td>Value 1</td></tr>
  <tr><td>Value 2</td></tr>
</table>

jQuery 代码:
$("tr:gt(0)")

结果:
[ <tr><td>Value 1</td></tr>, <tr><td>Value 2</td></tr> ]

:lang(language)

选择所有<P> 的语言属性:
$("p:lang(it)")

:last()

获取匹配的最后个元素

HTML 代码:
<ul>
    <li>list item 1</li>
    <li>list item 2</li>
    <li>list item 3</li>
    <li>list item 4</li>
    <li>list item 5</li>
</ul>

jQuery 代码:
$('li:last')
结果:
[ <li>list item 5</li> ]

:lt(index)

查找第一第二行,即索引值是0和1,也就是比2小

HTML 代码:
<table>
  <tr><td>Header 1</td></tr>
  <tr><td>Value 1</td></tr>
  <tr><td>Value 2</td></tr>
</table>

jQuery 代码:
$("tr:lt(2)")

结果:
[ <tr><td>Header 1</td></tr>, <tr><td>Value 1</td></tr> ]

:header

给页面内所有标题加上背景色

HTML 代码:
<h1>Header 1</h1>
<p>Contents 1</p>
<h2>Header 2</h2>
<p>Contents 2</p>

jQuery 代码:
$(":header").css("background", "#EEE");

结果:
[ <h1 style="background:#EEE;">Header 1</h1>, <h2 style="background:#EEE;">Header 2</h2> ]

:animated

只有对不在执行动画效果的元素执行一个动画特效

HTML 代码:
<button id="run">Run</button><div></div>

jQuery 代码:
$("#run").click(function(){
  $("div:not(:animated)").animate({ left: "+=20" }, 1000);
});

:focus

添加一个"focused"的类名给那些有focus方法的元素

css 代码:
.focused {
    background: #abcdef;
}

html 代码:
<div id="content">
    <input tabIndex="1">
    <input tabIndex="2">
    <select tabIndex="3">
        <option>select menu</option>
    </select>
    <div tabIndex="4">
        a div
    </div>
</div>

jQuery 代码:
$( "#content" ).delegate( "*", "focus blur", function( event ) {
    var elem = $( this );
    setTimeout(function() {
       elem.toggleClass( "focused", elem.is( ":focus" ) );
    }, 0);
});

:root

设置<html>背景颜色为黄色
$(":root").css("background-color","yellow");

:target
**选择由文档URI的格式化识别码表示的目标元素。

如果文档的URI包含一个格式化的标识符,或hash(哈希), 然后:target选择器将匹配ID和标识符相匹配的元素。 例如,给定的URI http://example.com/#foo, $( “p:target” ),将选择

元素。
**
:contains(text)

查找所有包含 "John" 的 div 元素

HTML 代码:
<div>John Resig</div>
<div>George Martin</div>
<div>Malcom John Sinclair</div>
<div>J. Ohn

jQuery 代码:
$("div:contains('John')")

结果:
[ <div>John Resig</div>, <div>Malcom John Sinclair</div> ]

:empty

查找所有不包含子元素或者文本的空元素

HTML 代码:
<table>
  <tr><td>Value 1</td><td></td></tr>
  <tr><td>Value 2</td><td></td></tr>
</table>

jQuery 代码:
$("td:empty")

结果:
[ <td></td>, <td></td> ]

:has(selector)

给所有包含 p 元素的 div 元素添加一个 text 类

HTML 代码:
<div><p>Hello</p></div>
<div>Hello again!</div>

jQuery 代码:
$("div:has(p)").addClass("test");

结果:
[ <div class="test"><p>Hello</p></div> ]

:parent

查找所有含有子元素或者文本的 td 元素

HTML 代码:
<table>
  <tr><td>Value 1</td><td></td></tr>
  <tr><td>Value 2</td><td></td></tr>
</table>

jQuery 代码:
$("td:parent")

结果:
[ <td>Value 1</td>, <td>Value 2</td> ]

以上就是一些基本的选择器,可能不全。但都是一些常用的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值