ให้เรตสมาชิก: 2 / 5

ดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

บทที่ 3 jQuery Selectors ตอนที่1
(มาดูกันว่าเจ้ามหากาพย์ selector นั้นมีอะไรซ่อนอยู่บ้าง)
jQuery syntax
$(selector).action()    selector คือส่วนที่เลือก เช่น element , css
action() คือ เมธอดที่ใช้กำหนดการทำงานให้กับ selector  
   จากลักษณะ syntax ของ jQurey ข้างต้นจะเห็น selector คือตัวที่เราจะใช้สำหรับอ้างอิงไปถึงออบเจ็กต่างๆ ที่อยู่บนหน้าเพจ
ซึ่งการที่เราจะสั่งให้ jQuery ทำงานบางอย่างตามที่เราตั้งใจนั้น เราจำเป็นต้องเรียกใช้งาน object ให้ได้อย่างถูกต้องก่อน เพราะว่าหากเรายังไม่สามารถสั่งให้ jQuery ระบุได้ว่าจะกระทำกับ object ใด ก็ไม่สามารถทำอะไรต่อได้อีกแล้ว ก็ถือว่าได้ Selector คือเรื่องพื้นฐานที่เราต้องรู้จักแล้วใช้ให้ถูกต้องก็จะสามารถสร้างสรรค์งาน ได้ดั่งใจ  
   selector ของ jQuery จะเริ่มต้นด้วยเครื่องหมายดอลลาร์แล้วตามด้วยวงเล็บ
$(selector)
โดยมี selector แบบพื้นฐานดังนี้
1  $("#id")  เป็นการเลือก object ที่มี id ตามที่กำหนด
ตัวอย่างเช่น

<html>
<head>
<script src="/jquery-1.9.1.js">
</script>
<script>
$(document).ready(function(){ 
    $("#test").fadeOut(4000);
});
</script>
</head>
<body>
<h2 id="test">welcome to www.mindphp.com</h2>
</body>
</html>

คลิกดูตัวอย่างการ select แบบ IdSelector
 *จากตัวอย่าง select แบบ $("#id") จะเห็นว่าเมื่อเราใช้คำสั่ง $("#test").fadeOut(4000); ซึ่งหมายถึงเลือก object ที่มี id ทั้งหมด โดยให้มีเอฟเฟค fadeOut(4000) (ค่อยๆจางหายไปใน 4 วินาที)  ดังนั้นข้อความ welcome to www.mindphp.com ซึ่งอยู่ใน object ที่มี id จึงค่อยๆจางหายไป ตามตัวอย่าง

2   $(".class")  การเลือกด้วย classname เช่น หากในหน้าเว็บของเรามี tag ที่เรียกใช้งาน class stylesheet อยู่ แทกตัวนี้จะเป็นตัวที่ถูก selector  ตัวอย่างเช่น

<html>
<head>
<script src="/jquery-1.9.1.js"></script>
<script>
$(document).ready(function(){ 
    $(".test").fadeOut(4000);
});
</script>
</head>
<body>
<h2 class="test">welcome to www.mindphp.com</h2>
</body>
</html>

คลิกดูตัวอย่าง select โดยชื่อ classname
  *จากตัวอย่าง select โดยชื่อ classname จะเห็นว่าเมื่อเราใช้คำสั่ง $(".test").fadeOut(4000); ซึ่งหมายถึงเลือก h2 class ทั้งหมด โดยให้มีเอฟเฟค fadeOut(4000) (ค่อยๆจางหายไปใน 4 วินาที)  ดังนั้นข้อความ welcome to www.mindphp.com ซึ่งอยู่ใน h2 class จึงค่อยๆจางหายไป ตามตัวอย่าง

3   $("*")  เป็นการเลือก object ทั้งหมด (all selector) ตัวอย่างเช่น

<html>
<head>
<script src="/jquery-1.9.1.js"></script>
<script>
$(document).ready(function(){ 
    $("*").fadeOut(4000);
});
</script>
</head>
<body>
<h2>welcome to www.mindphp.com</h2>
</body>
</html>

คลิกดูตัวอย่างแบบ all selector
  *จากตัวอย่าง select โดยชื่อ all selector จะเห็นว่าเมื่อเราใช้คำสั่ง $("*").fadeOut(4000); ซึ่งหมายถึงเลือก object ทั้งหมด โดยให้มีเอฟเฟค fadeOut(4000) (ค่อยๆจางหายไปใน 4 วินาที)  ดังนั้นข้อความ welcome to www.mindphp.com ซึ่งอยู่ในแท็ก h2 ซึ่งถือเป็น object หนึ่งภายในเอกสาร html นี้จึงค่อยๆจางหายไป ตามตัวอย่าง

4   select โดยชื่อ html tag  $("a"), $("p")$, ("div")  ตัวอย่างเช่น

<html>
<head>
<script src="/jquery-1.9.1.js"></script>
<script>
$(document).ready(function(){  
    $("h2").fadeOut(4000);
  });
</script>
</head>
<body>
<h2>welcome to www.mindphp.com</h2>
</body>
</html>

คลิกดูตัวอย่าง select โดยชื่อ html tag
  *จากตัวอย่าง select โดยชื่อ html tag จะเห็นว่าเมื่อเราใช้คำสั่ง $("h2").fadeOut(4000); ซึ่งหมายถึงเลือกแท็ก h2 ทั้งหมด โดยให้มีเอฟเฟค fadeOut(4000) (ค่อยๆจางหายไปใน 4 วินาที)  ดังนั้นข้อความ welcome to www.mindphp.com ซึ่งอยู่ในแท็ก h2 จึงค่อยๆจางหายไป ตามตัวอย่าง

5.  $("selector1, selector2,.... selectorN")  เป็นการเลือก object แบบหลายๆอัน
(multi selector)
 เช่น ถ้าเราต้องการเลือกหลาย tag โดยใช้คำสั่งเดียวกัน สามารถทำได้ดังนี้

<html>
<head>
<script src="/jquery-1.9.1.js"></script>
<script>
$(document).ready(function(){
$('h2, p, b').fadeOut(4000);
});
</script>
</head>
<body>
<h2 > Nadech </h2>
<p > boyPakorn</p>
<b > Mario</b>
</body>
</html>

คลิกดูตัวอย่างแบบ multi selector
*จากตัวอย่าง multi selector จะเห็นว่าเมื่อเราใช้คำสั่ง $('h2, p, b').fadeOut(4000); สามารถทำให้เราสามารถเลือกแท็ก h2 , p และแท็ก b ได้พร้อมกันทั้งหมด โดยให้มีเอฟเฟค fadeOut(4000) (ค่อยๆจางหายไปใน 4 วินาที)  ดังนั้นข้อความ แท็ก h2 , p และแท็ก b จึงค่อยๆจางหายไปพร้อมๆกัน ตามตัวอย่าง  ซึ่งช่วยให้การเขียนโค๊ดคำสั่งง่ายขึ้นแทนที่จะต้องเขียนคำสั่งทีละ object


อ่านเพิ่มเติม
บทที่ 3 jQuery Selectors ตอนที่ 2
บทที่ 3 jQuery Selectors ตอนที่ 3


กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
กองทุนการเงินระหว่างประเทศ (IMF) คืออะไร? และมีหน้าที่อะไร?
โดย taemmynatchapon จ 16 ก.ค. 2018 6:02 pm บอร์ด Share Knowledge
0
10
จ 16 ก.ค. 2018 6:02 pm โดย taemmynatchapon
[ปัญหา]ขอวิธีติดตั้ง selenium บน Ubuntu หน่อยครับ
โดย tatiya จ 16 ก.ค. 2018 5:26 pm บอร์ด Programming - C/C++ & java & Python
2
31
จ 16 ก.ค. 2018 5:57 pm โดย tatiya
B - mod_md_recent กำหนด position ในหน้าเว็บแล้วในหน้าเว็บขึ้นแจ้ง Error
โดย Parichat จ 16 ก.ค. 2018 4:53 pm บอร์ด Joomla Dev
0
6
จ 16 ก.ค. 2018 4:53 pm โดย Parichat
B - com_mcharts ไม่สามารถเข้าหน้าตั้งค่าได้ใน Joomla 3.x
โดย Parichat จ 16 ก.ค. 2018 4:05 pm บอร์ด Joomla Dev
2
9
จ 16 ก.ค. 2018 4:55 pm โดย Parichat
B - ไม่สามารถแก้ไขข้อมูลใน Customers ได้
โดย watcharin จ 16 ก.ค. 2018 3:39 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
2
19
จ 16 ก.ค. 2018 9:00 pm โดย thatsawan
มาพบกับ component ที่ชื่อว่า MD Files ช่วยในการจัดการไฟล์
โดย Parichat จ 16 ก.ค. 2018 2:36 pm บอร์ด PHP News
0
11
จ 16 ก.ค. 2018 2:36 pm โดย Parichat
งานประจำวันที่ 16 กรกฎาคม 2561
โดย tatiya จ 16 ก.ค. 2018 10:19 am บอร์ด M065 - ตติยะ นาชัย
5
20
จ 16 ก.ค. 2018 9:47 pm โดย tatiya
งานประจำวันที่ 16 กรกฎาคม 2561
โดย prakon จ 16 ก.ค. 2018 10:16 am บอร์ด MT24 - นายปกรณ์ วิริยะธนวิโรจน์
2
23
จ 16 ก.ค. 2018 10:58 pm โดย thatsawan
งานประจำวันที่ 15 กรกฏาคม 2561 (วันอาทิตย์)
โดย pprn อ 15 ก.ค. 2018 7:45 pm บอร์ด MT25 - นางสาวปรียากมล รินนาศักดิ์
1
15
อ 17 ก.ค. 2018 10:19 am โดย pprn
งานประจำวันที่ 15 กรกฎาคม 2561
โดย prakon อ 15 ก.ค. 2018 2:49 pm บอร์ด MT24 - นายปกรณ์ วิริยะธนวิโรจน์
1
19
อ 15 ก.ค. 2018 2:50 pm โดย prakon
B - ติดตั้งภาษาไทยใน Joomla 4.x ไม่ได้
โดย Parichat ส 14 ก.ค. 2018 6:50 pm บอร์ด Joomla Dev
0
2
ส 14 ก.ค. 2018 6:50 pm โดย Parichat
แสงสีน้ำเงิน (Blue light) มีอันตราย ส่งผลกระทบต่อดวงตา
โดย taemmynatchapon ส 14 ก.ค. 2018 6:48 pm บอร์ด Share Knowledge
0
24
ส 14 ก.ค. 2018 6:48 pm โดย taemmynatchapon
UPS (Uninterruptible Power Supply) คืออะไร
โดย taemmynatchapon ส 14 ก.ค. 2018 6:05 pm บอร์ด Share Knowledge
0
21
ส 14 ก.ค. 2018 6:05 pm โดย taemmynatchapon
ปุ่ม MU บนเครื่องคิดเลขมีไว้ทำอะไร?
โดย taemmynatchapon ส 14 ก.ค. 2018 5:38 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
30
ส 14 ก.ค. 2018 5:38 pm โดย taemmynatchapon
งานประจำวันที่ 14 กรกฎาคม 2561
โดย prakon ส 14 ก.ค. 2018 5:25 pm บอร์ด MT24 - นายปกรณ์ วิริยะธนวิโรจน์
1
24
ส 14 ก.ค. 2018 5:26 pm โดย prakon
ปุ่ม M+ บนเครื่องคิดเลขมีไว้ทำอะไร?
โดย taemmynatchapon ส 14 ก.ค. 2018 5:11 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
26
ส 14 ก.ค. 2018 5:11 pm โดย taemmynatchapon
ใบวางบิล คืออะไร?
โดย taemmynatchapon ส 14 ก.ค. 2018 3:38 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
33
ส 14 ก.ค. 2018 3:38 pm โดย taemmynatchapon
R - หน้าทำใบเสนอราคา ขอปุ่ม update ส่วนที่เป็นค่า Customize Details
โดย mindphp ส 14 ก.ค. 2018 2:43 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
1
10
จ 16 ก.ค. 2018 10:54 pm โดย thatsawan
กรณีสร้าง Custom Field แต่เลือก Type ของ Fields ไม่ได้
โดย Parichat ส 14 ก.ค. 2018 11:34 am บอร์ด Joomla Development
1
38
ส 14 ก.ค. 2018 11:49 am โดย Parichat
งานประจำวันที่ 14 กรกฎาคม 2561
โดย tatiya ส 14 ก.ค. 2018 9:54 am บอร์ด M065 - ตติยะ นาชัย
2
9
ส 14 ก.ค. 2018 6:43 pm โดย tatiya