ให้เรตสมาชิก: 3 / 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


กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
บันทึกการประชุม OpenERP MD-ERP
โดย rinrada ส 04 ก.พ. 2017 11:52 am บอร์ด OpenERP - MD-ERP (Main)
26
173
พฤ 21 พ.ย. 2019 6:56 pm โดย thatsawan
การใช้ ฟังก์ชัน hsl() และ hsal () กำหนดค่าของสี
โดย bankjittapol พฤ 21 พ.ย. 2019 6:55 pm บอร์ด CSS Knowledge
0
9
พฤ 21 พ.ย. 2019 6:55 pm โดย bankjittapol
วิธีการแยกตัวอักษรเข้าอาร์เรย์ (Array) แต่ล่ะอาร์เรย์ ด้วยคำสั่ง split
โดย jamepiyawat พฤ 21 พ.ย. 2019 6:50 pm บอร์ด Jquery & Ajax Knowledge
0
5
พฤ 21 พ.ย. 2019 6:50 pm โดย jamepiyawat
วิธีการดึงค่าเฉพาะค่าสุดท้ายของ class แม้ว่าจะมี class ชื่อเหมือนกัน หลายคลาส โดย javascript
โดย Ittichai_chupol พฤ 21 พ.ย. 2019 6:39 pm บอร์ด Jquery & Ajax Knowledge
0
14
พฤ 21 พ.ย. 2019 6:39 pm โดย Ittichai_chupol
การติดตั้ง wkhtmltopdf ด้วย terminal บน ubuntu
โดย jirawoot พฤ 27 มิ.ย. 2019 4:00 pm บอร์ด Linux - Web Server
3
698
พฤ 21 พ.ย. 2019 2:49 pm โดย mindphp
การปรับแก้ไข(Overrides) Modules ใน Template
โดย bankjittapol พฤ 21 พ.ย. 2019 2:36 pm บอร์ด Joomla Developing Knowledge
0
8
พฤ 21 พ.ย. 2019 2:36 pm โดย bankjittapol
wkhmtltopdf คืออะไร
โดย jirawoot พ 03 ก.ค. 2019 6:35 pm บอร์ด Share Knowledge
1
218
พฤ 21 พ.ย. 2019 2:34 pm โดย mindphp
อัพเกรด wkhtmltopdf บน Ubuntu 16.04
โดย mindphp พฤ 21 พ.ย. 2019 2:33 pm บอร์ด Linux - Web Server
0
7
พฤ 21 พ.ย. 2019 2:33 pm โดย mindphp
VDO - โปรแกรมแปลงพื้นที่
โดย numtan5839 พฤ 21 พ.ย. 2019 1:59 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
1
11
พฤ 21 พ.ย. 2019 4:27 pm โดย thatsawan
VDO - การใช้โปรแกรมคำนวณแคลอรี่
โดย numtan5839 พฤ 21 พ.ย. 2019 1:46 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
1
10
พฤ 21 พ.ย. 2019 4:24 pm โดย thatsawan
แนะนำ tools Online
โดย chaiyasitpraphut พ 13 พ.ย. 2019 6:21 pm บอร์ด MindPHP News / Feedback
1
54
พฤ 21 พ.ย. 2019 12:33 pm โดย mindphp
ต้องการเก็บ cache ข้อมูลที่ดึงมาจาก api ของ กรมอุตุฯ ต้องทำยังไงครับ
โดย bankjittapol พฤ 21 พ.ย. 2019 10:40 am บอร์ด Joomla Development
1
15
พฤ 21 พ.ย. 2019 10:43 am โดย thatsawan
อัพเดทความคืบหน้า / Progress - ThaiVI
โดย mindphp พ 10 ต.ค. 2018 3:49 am บอร์ด ThaiVI (Main)
409
2754
พฤ 21 พ.ย. 2019 10:32 am โดย thatsawan
งานประจำวันที่ 21 พฤศจิกายน 2562
โดย numtan5839 พฤ 21 พ.ย. 2019 10:11 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
8
31
พฤ 21 พ.ย. 2019 7:42 pm โดย numtan5839
Google Station บริการ Wi-Fi ฟรี จาก google มีบริการภายในสนามบิน 6 แห่ง
โดย jamepiyawat จ 26 ส.ค. 2019 6:19 pm บอร์ด Share Knowledge
2
299
พฤ 21 พ.ย. 2019 9:49 am โดย aloha11x
เปลี่ยน Default Python3 บนเครื่อง Ubuntu 16.04 จาก Python3.5 เป็น Python3.6
โดย mindphp พฤ 21 พ.ย. 2019 7:04 am บอร์ด Linux - Web Server
0
8
พฤ 21 พ.ย. 2019 7:04 am โดย mindphp
สร้าง Template ใน Joomla
โดย bankjittapol พ 20 พ.ย. 2019 8:06 pm บอร์ด Joomla Developing Knowledge
0
9
พ 20 พ.ย. 2019 8:06 pm โดย bankjittapol
list box เลือกแสดงรูปแบบของวันที่ (Date Format )
โดย bankjittapol พ 20 พ.ย. 2019 6:55 pm บอร์ด Joomla Developing Knowledge
0
12
พ 20 พ.ย. 2019 6:55 pm โดย bankjittapol
คำสั่งเข้าใช้งาน PostgreSQL ด้วย Command Line
โดย mindphp อ 30 ก.ค. 2017 11:24 pm บอร์ด PostgreSQL
6
1813
พ 20 พ.ย. 2019 6:38 pm โดย mindphp
replace() คำสั่งค้นหาแทนที่ใน javascript
โดย jamepiyawat พ 20 พ.ย. 2019 6:36 pm บอร์ด Jquery & Ajax Knowledge
0
9
พ 20 พ.ย. 2019 6:36 pm โดย jamepiyawat