2013年3月28日 星期四

[jQuery]jQuery Selector種類之層級類


jQuery  Selector種類之層級類--
ancestor descendant,parent > child ,prev + next ,prev ~ siblings ,
:first ,:last ,:not(selector),:even ,:odd ,:eq(index),:gt(index) ,
:lt(index) ,:header ,:animated ,:focus


1、
ancestor descendant
在給定的祖先元素下匹配所有的後代元素
程式範例:

<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//ancestor descendant 在給定的祖先元素下匹配所有的後代元素
var str=' ';//此變數顯示訊息用的
//選取在form元素下,所有input元素。
//val 獲得匹配元素的當前值。
$("form input").val(function() {
str +=  ' name: ' + this.name + ' -- ' +
    ' value: ' + this.value;
});
alert(str);
});
</script>
</head>
<body>
<form>
 <label>Name:</label>
 <input name="name" value="testName"/>
 <fieldset>
     <label>Newsletter:</label>
     <input name="newsletter" value="jQuery  Selector"/>
</fieldset>
</form>
<input name="none"  value="none"/>
</body>
</html>

顯示結果:




2、
parent > child
在給定的父元素下匹配所有的子元素
用以匹配元素的選擇器,並且它是第一個選擇器的子元素
程式範例:

<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//parent > child 在給定的父元素下匹配所有的子元素
//用以匹配元素的選擇器,並且它是第一個選擇器的子元素
var str=' ';//此變數顯示訊息用的
//選取在form元素下,第一個input元素。
//val 獲得匹配元素的當前值。
$("form > input").val(function() {
str +=  ' name: ' + this.name + ' -- ' +
    ' value: ' + this.value;
});
alert(str);
});
</script>
</head>
<body>
<form>
 <label>Name:</label>
 <input name="name" value="testName"/>
 <fieldset>
     <label>Newsletter:</label>
     <input name="newsletter" value="jQuery  Selector"/>
</fieldset>
</form>
<input name="none"  value="none"/>
</body>
</html>


顯示結果:


3、
prev + next
匹配所有緊接在prev 元素後的next 元素

程式範例:

<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//prev + next 匹配所有緊接在prev 元素後的next 元素
var str=' ';//此變數顯示訊息用的
//選取label元素并且緊接著第一個input元素
//val 獲得匹配元素的當前值。
$("label + input").val(function() {
str +=  ' name: ' + this.name + ' -- ' +
    ' value: ' + this.value;
});
alert(str);
});
</script>
</head>
<body>
<form>
 <label>Name:</label>
 <input name="name" value="testName"/>
 <fieldset>
     <label>Newsletter:</label>
     <input name="newsletter" value="jQuery  Selector"/>
</fieldset>
</form>
<input name="none"  value="none"/>
</body>
</html>



顯示結果:


4、
prev ~ siblings
匹配prev 元素之後的所有siblings 元素
程式範例:

<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//prev ~ siblings 匹配prev 元素之後的所有siblings 元素
var str=' ';//此變數顯示訊息用的
//選取在form元素下,第一個同辈 input元素。
//val 獲得匹配元素的當前值。
$("form ~ input").val(function() {
str +=  ' name: ' + this.name + ' -- ' +
    ' value: ' + this.value;
});
alert(str);
});
</script>
</head>
<body>
<form>
 <label>Name:</label>
 <input name="name" value="testName"/>
 <fieldset>
     <label>Newsletter:</label>
     <input name="newsletter" value="jQuery  Selector"/>
</fieldset>
</form>
<input name="none"  value="none"/>
</body>
</html>


顯示結果:


5、
:first
獲取第一個元素
程式範例:
<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//:first 獲取第一個元素
alert($("li:first").text());
});
</script>
</head>
<body>
<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>
</body>
</html>


顯示結果:




6、
:last
獲取最後個元素
程式範例:
<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//:last 獲取最後個元素
alert($("li:last").text());
});
</script>
</head>
<body>
<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>
</body>
</html>


顯示結果:




7、
:not(selector)
去除所有與給定選擇器匹配的元素
程式範例:
<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//:not(selector) 去除所有與給定選擇器匹配的元素
var str=' ';//此變數顯示訊息用的
$("input:not(:checked)").val(function() {
str += ' name: ' + this.name ;
});
alert(str);
});
</script>
</head>
<body>
<input name="apple" />
<input name="flower" checked="checked" />
</body>
</html>


顯示結果:



8、
:even
匹配所有索引值為偶數的元素,從0 開始計數
程式範例:
<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//:even 匹配所有索引值為偶數的元素,從0 開始計數
//查找表格的1、3、5...行(即索引值0、2、4...)
//記得是依索引值,不是依行數喔~
var str=' ';//此變數顯示訊息用的
$("tr:even").html(
function(n,value) {
str += ' value: ' + value;
});
alert(str);
});
</script>
</head>
<body>
<table>
<tr><td>Value 0</td></tr>
<tr><td>Value 1</td></tr>
<tr><td>Value 2</td></tr>
</table>
</body>
</html>


顯示結果:




9、
:odd
匹配所有索引值為奇數的元素,從0 開始計數
程式範例:
<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//:odd 匹配所有索引值為奇數的元素,從0 開始計數
//查找表格的2、4、6行(即索引值1、3、5...)
//記得是依索引值,不是依行數喔~
var str=' ';//此變數顯示訊息用的
$("tr:odd").html(
function(n,value) {
str += ' value: ' + value;
});
alert(str);
});
</script>
</head>
<body>
<table>
<tr><td>Value 0</td></tr>
<tr><td>Value 1</td></tr>
<tr><td>Value 2</td></tr>
</table>
</body>
</html>



顯示結果:


10、
:eq(index)
匹配一個給定索引值的元素
程式範例:
<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//:eq(index) 匹配一個給定索引值的元素
//查找第二行
var str=' ';//此變數顯示訊息用的
$("tr:eq(1)").html(
function(n,value) {
str += ' value: ' + value;
});
alert(str);
});
</script>
</head>
<body>
<table>
<tr><td>Value 0</td></tr>
<tr><td>Value 1</td></tr>
<tr><td>Value 2</td></tr>
</table>
</body>
</html>


顯示結果:




11、
:gt(index)
匹配所有大於給定索引值的元素
程式範例:
<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//:gt(index) 匹配所有大於給定索引值的元素
//查找第二第三行,即索引值是1和2,也就是比0大
var str=' ';//此變數顯示訊息用的
$("tr:gt(0)").html(
function(n,value) {
str += ' value: ' + value;
});
alert(str);
});
</script>
</head>
<body>
<table>
<tr><td>Value 0</td></tr>
<tr><td>Value 1</td></tr>
<tr><td>Value 2</td></tr>
</table>
</body>
</html>


顯示結果:



12、
:lt(index)
匹配所有小於給定索引值的元素
程式範例:
<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//:lt(index) 匹配所有小於給定索引值的元素
//查找第一第二行,即索引值是0和1,也就是比2小
var str=' ';//此變數顯示訊息用的
$("tr:lt(2)").html(
function(n,value) {
str += ' value: ' + value;
});
alert(str);
});
</script>
</head>
<body>
<table>
<tr><td>Value 0</td></tr>
<tr><td>Value 1</td></tr>
<tr><td>Value 2</td></tr>
</table>
</body>
</html>


顯示結果:


13、
:header
匹配如 h1, h2, h3之類的標題元素
程式範例:
<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//:header 匹配如 h1, h2, h3之類的標題元素
//給頁面內所有標題加上背景色
$(":header").css("background", "#EEE");
});
</script>
</head>
<body>
<h1>Header 1</h1>
<p>Contents 1</p>
<h2>Header 2</h2>
<p>Contents 2</p>
</body>
</html>


顯示結果:


14、
:animated
匹配所有正在執行動畫效果的元素
程式範例:
<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//:animated 匹配所有正在執行動畫效果的元素
function aniDiv(){
   $("div:eq(0)").animate({width:"50%"},"slow");
   $("div:eq(0)").animate({width:"100%"},"slow",aniDiv);
 }
 aniDiv();
 $(".btn1").click(function(){
//只有對在執行動畫效果的元素執行一個動畫特效
   $(":animated").css("background-color","red");
  //只有對不在執行動畫效果的元素執行一個動畫特效
   $("div:not(:animated)").css("background-color","blue");
 });
});
</script>
</head>
<body>

<button class="btn1">Change color of the animated element</button>
<div style="background:blue;">Div 1</div>
<div style="background:green;">Div 2</div>
<div style="background:yellow;">Div 3</div>

</body>
</html>



顯示結果:




15、
:focus
匹配當前獲取焦點的元素。

如同其他偽類選擇器(那些以":"開始),
建議:focus前面用標記名稱或其他選擇;否則,
通用選擇("*")是不言而喻的。
換句話說,$(':focus')等同為$('*:focus')。
如果你正在尋找當前的焦點元素,
$( document.activeElement )將檢索,而不必搜索整個DOM樹。
程式範例:

<!DOCTYPE html>
<html>
<head>
<title>[jQuery]jQuery  Selector 之層級類</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.1.1.min.js"></script>

<script>
$(document).ready(function(){
//:focus 匹配當前獲取焦點的元素。
//添加一個"focused"的類名給那些有focus方法的元素
$( "#content" ).delegate( "*", "focus blur", function( event ) {
   var elem = $( this );
   setTimeout(function() {
      elem.toggleClass( "focused", elem.is( ":focus" ) );
   }, 0);
});
});
</script>
<style>
.focused {background: #abcdef;}
</style>
</head>
<body>
<div id="content">  
<input tabIndex="1">  
<input tabIndex="2">  
<select tabIndex="3">      
<option>select menu</option>  
</select>  
<div tabIndex="4">a div</div>
</div>
</body>
</html>



顯示結果:





jQuery 程式線上測式網頁:


http://www.w3schools.com/jquery/tryit.asp?filename=tryjquery_sel_animated




沒有留言:

張貼留言

標籤

Oracle (150) Oracle DB (144) Oracle_DB (143) Oracle SQL (135) JAVA (84) css-基本類 (65) MySQL (59) CSS Selector (58) jQuery (49) JavaScript-基本類 (39) Spring Boot (38) JavaScript (37) JavaScript HTML DOM (37) JavaScript-HTML_DOM (36) CSS3 (30) JAVA-基本類 (28) jQuery UI (27) Apache (23) Oracle GROUP BY (20) datepicker (20) Android (18) Oracle Date (17) c (17) JAVA-lang套件 (16) Linux (16) Oracle Sub Query (16) Spring-基本類 (16) jQuery-基本類 (16) MySQL-進階系列教學 (15) Android基本類 (14) Grails (14) Oracle join (14) SQLite (13) Spring (13) WIN7-基本類 (13) grails-基本類 (13) linux cent os (13) CKEditor (12) JAVA-流程控制類 (12) JAVA_Spring (12) PHP (11) Spring MVC (11) MySQL-基本系列教學 (10) Notepad (10) Notepad++ (10) SQLite for java (10) Windows (10) c/c++ (10) eclipse (9) jQuery-Selector (9) sqldeveloper (9) DB_Toad (8) JAVA_IDE_Eclipse (8) JavaScript-String類 (8) MySQL DB Toad (8) MySQL-DATE相關 (8) MySQL-函式相關 (8) Spring Bean (8) Android Studio (7) HTML5 (7) Hibernate (7) JAVA-OCWCD (7) JavaScript-陣列類 (7) Docker (6) JAVA-程式分享 (6) JAVA.util套件 (6) JavaScript-數學類 (6) MinGw (6) MySQL-其它類 (6) Servlet (6) centos (6) Apache_Tomcat (5) Apache套件_POI (5) CSS (5) JavaScript-Date物件 (5) JavaScript-其它類 (5) PostgreSQL (5) httpd (5) log4j (5) 基本資訊 (5) 開發工具 (5) CSS Properties (4) Dev-C++ (4) IntelliJ IDEA (4) Oracle DDL (4) Sublime (4) TortoiseSVN (4) apache_Maven (4) Android NDK (3) Eclipse IDE for C/C++ (3) Hibernate-基本類 (3) JAVA-問題 (3) JAVA-綀習分享 (3) JVM (3) Linux 指令 (3) Proxy Server (3) Spring Mobile (3) Spring web (3) Squid (3) VirtualBox (3) maven (3) zk (3) 生活其它 (3) Bootstrap (2) Filter (2) JAVA_IO (2) JAVA_其它_itext套件 (2) JBoss-問題 (2) JSP (2) Jboss (2) Listener (2) MySQL-語法快速查詢 (2) Spring AOP (2) Spring Batch (2) Spring Boot Actuator (2) Spring i18n (2) Subversive (2) Tomcat 8 (2) UML (2) WebJars (2) WinMerge (2) c++ (2) c語言綀習題 (2) jQuery Mobile (2) jQuery-事件處理 (2) jQuery-套件類 (2) putty (2) svn (2) weblogic (2) Apache_JMeter (1) Apache套件_BeanUtils (1) Apache套件_StringUtils (1) Base64 (1) Google API (1) HTML5-基本類 (1) Heap (1) JAVA 7 (1) JAVA SE 、JAVA EE、JAVA ME (1) JAVA 日期 (1) JAVA-OCJP (1) JAVA-WEB (1) JAVA_IDE (1) JAVA其它 (1) JBoss Server (1) JDK (1) JMX (1) JRE (1) Java RMI (1) Java String (1) Joda Time (1) Linux_其它 (1) MySQL教學 (1) Oracle_VirtualBox (1) SQL Server (1) SWT (1) Session (1) Stack (1) Struts 2 (1) Tool (1) ZK Studio (1) csv (1) grails-其它類 (1) jQuery-進階 (1) java mail (1) java web (1) java8 (1) jsoup (1) mockmvc (1) modules (1) tomcat (1) win10 (1) 其它類 (1) 圖片工具 (1) 模擬器 (1) 讀書分享 (1) 開發資訊 (1)

精選文章

初學 Java 的 HelloWorld 程式

撰寫一個JAVA程式 public class HelloWorld{ public static void main(String[ ] args){ System.out.println("我第一支Java程式!!"); } } ...