close

 

本次課程中仍是在講選擇器的各種表示及方式

關係選擇器:

$(" #myul > li ").addClass("myboder");       // 指的是 id=myul  下的第一層li 加入 "myboder" 的css

$(" #myul li ").addClass("myboder");          // 指的是 id=myul  下的所有li   加入 "myboder" 的css

$(" label + input ").val("hello");                   // 指的是 label  後面接的input  若非label所接 擇不算

$(" form ~ input ").val("haha~~");             // 指的是form  同一層的 input 下面有範例:

Ex:

<form>
   <label>Name:</label> <input name="name" />
   <fieldset>
      <label>Newsletter:</label><input name="newsletter" />
   </fieldset>
</form>
<input name="none1" />  // 和form同一層
<div>
     <input name="none2" />
</div>
<input name="none3" />  // 和form同一層

 

過濾選擇器(:)

基本過濾選擇器

$("tr:first").addClass("firsttr") ;   //  止第一個<tr> 加入 "firsttr" 的css

$("tr:last").addClass("lasttr");    // 同上顧名思義  最後一個

$("tr:odd").addClass("firsttr");    //  單數的<tr>  也就是指index 位置,<注意>通常第一格位置是0 是偶數

$("tr:even").addClass("lasttr");   // 偶數的<tr>  其他同上odd

$("tr:eq(1)").addClass("firsttr");  // <tr> index 等於1的位置

$("tr:gt(1)").addClass("firsttr");   // <tr> index 大於1的位置

$("tr:lt(2)").addClass("firsttr");    // <tr> index  小於2的位置

$("tr:not(:eq(2))").addClass("firsttr");  // <tr> index 不等於2的位置 

$(":header").addClass("firsttr");         // 指所有 <h1><h2>...標簽 

內容選擇器 

$("td:contain('AA')").addClass("firsttr");  // 含有AA文字內容的td元素

$("td:empty").addClass("mydiv").html("aaa");  //  指內容中是空的<td>元素 加入 "mydiv" 的css 並填入aaa內容

$("td:parent").addClass("mytd");   //    <td>的父類別

$('div:has(p)').addClass("mydiv");  //   div內含有<p> 的加入"mydiv" css  也是(內容中含有p標籤的div元素)

可見度過濾選擇器

$('#showAll').click(function(){
$("tr:hidden").show().addClass("mytr");   // 所有<tr> 元素是hidden的都打開並加入"mytr" Css
});

$('#hiddenAll').click(function(){
$("tr:visible").hide();                                // 所有<tr> 元素是visible的都關閉
});

 

屬性選擇器(:)

$('input[id]').val()     // 指input中含有id屬性的 取內容value

$("input[name='poweruser']").val()  // 指input中name屬性='poweruser' 的,取value

$("input[name!='user']").each(function(index){

      alert(index +": "+ $(this).val() );

});          //   選擇標籤為input且name屬性值不等於user的元素  則指B、C

 

$("input[name^='user']").each(function(index){

      alert(index +": "+ $(this).val() );

});          //   選擇標籤為input且name屬性值開頭等於user的元素  則指A、C

 

$("input[name$='user']").each(function(index){

      alert(index +": "+ $(this).val() );

});          //   選擇標籤為input且name屬性值user結尾的元素  則指A、B

$("input[name$='user']").each(function(index){

      alert(index +": "+ $(this).val() );

});          //   選擇標籤為input且name屬性值user結尾的元素  則指A、B

 

$("input[name^='user'][name*='rr']").each(function(index){

      alert(index +": "+ $(this).val() );

});          //   1. 先找到標籤為input且name屬性值為user開頭的元素

               //   2. 再從中比對name屬性值是否含有rr 字串內容的元素 則指 C

 

屬性選擇器範例程式:

<form>
   <input type="text" id="user" name="user" value="user"/>      // A
   <input type="text" name="poweruser" value="poweruser"/>  // B
   <input type="text" name="userright" value="userright"/>        //C
</form>

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 JoshS 的頭像
    JoshS

    JoshS的部落格

    JoshS 發表在 痞客邦 留言(0) 人氣()