jquery plugin เปลี่ยนสีพื้นหลัง สร้าง plugin ตอนที่ 2

เขียนเมื่อ 11 ปีก่อน โดย Ninenik Narkdee
jquery jquery plugin

คำสั่ง การ กำหนด รูปแบบ ตัวอย่าง เทคนิค ลูกเล่น การประยุกต์ การใช้งาน เกี่ยวกับ jquery jquery plugin

ดูแล้ว 10,392 ครั้ง


ตอนที่ 2 เป็นการทำความเข้าใจ การทำงาน ของสวนต่างๆ อย่างง่าย
เพื่อให้พอได้เห็นรูปแบบ
 
ต่อจากเนื้อหา ตอนแรก 
 
เริ่มต้นสร้าง jQuery plugin อย่างง่าย ตอนที่ 1 
 
โดยในตอนนี้ เราจะไม่มีการส่งค่าเพิ่มเติม เข้าไปใน plugin
แต่จะมีการกำหนด ค่าเริ่มต้น เพื่อศึกษา การเรียกใช้งาน
 
เงื่อนไขง่ายๆ คือ ให้ plugin นี้ทำการเปลี่ยนสีพื้นหลัง เป็นสีเหลือง
เมื่อมีการเรียกใช้งาน
 
เราจะกำหนดค่าไปในส่วนนี้

1
2
3
4
5
6
// ส่วนนี้ สำหรับกำหนดค่าเริ่มต้น
var defaults={
    background:"yellow" // กำหนดสีพื้นหลัง ในค่าเริ่มต้นเป็น สีเหลือง
};

 
 
ดังนั้น ส่วน สำหรับเป็นตัวแปร object ที่มีการกำหนด ค่าเริ่มต้น 

1
2
// ส่วนสำหรับ  เป็นต้วแปร รับค่า options หากมี หรือใช้ค่าเริ่มต้น ถ้ากำหนด
var settings = $.extend( {}, defaults, options );
 
หรือที่เราสามารถเขียนในรูปแบบนี้ก็ได้

1
2
3
var settings = $.extend( {}, {
    background:"yellow" // กำหนดสีพื้นหลัง ในค่าเริ่มต้นเป็น สีเหลือง
}, options );      
 
ก็จะทำให้เราได้ ค่าตัวแปร object ชื่อ 
 
settings.background มีค่าเป็น yellow ตามที่กำหนด
 
ต่อจากนี้ เมื่อเราได้ค่า ตัวแปร ค่าสีพื้นหลังแล้ว เราจะเอาไปใช้งาน
 
โค้ตสำหรับ การทำงานของ plugin ของเราคือ แค่เปลี่ยนสีพื้นหลัง
ด้วย ฟังก์ชั่น css ของ jQuery
 
1
$(this).css("background-color",settings.background);
 
เท่านี้ plugin อย่างง่าย เมื่อมีการเรียกใช้งาน

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// JavaScript Document
(function($){
    // setbackground คือชื่อของ plugin ที่เราต้องการ ในที่นี้ ใช้ว่า  setbackground
    $.fn.setbackground = function( options ) { // กำหนดให้ plugin ของเราสามารถ รับค่าเพิ่มเติมได้ มี options
      
        // ส่วนนี้ สำหรับกำหนดค่าเริ่มต้น
        var defaults={
            background:"yellow" // กำหนดสีพื้นหลัง ในค่าเริ่มต้นเป็น สีเหลือง
        };
      
        // ส่วนสำหรับ  เป็นต้วแปร รับค่า options หากมี หรือใช้ค่าเริ่มต้น ถ้ากำหนด
        var settings = $.extend( {}, defaults, options );
         
        /// คืนค่ากลับ การทำงานของ plugin
        return this.each(function() {
            $(this).css("background-color",settings.background);
            // โค้ตสำหรับ การทำงานของ plugin
        });
      
    };
 
})(jQuery);

 
ก็จะทำให้ พื้นหลัง ของ object ที่เรียกใช้งานมีพื้นหลังเป็นสีเหลือง

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> </title>
</head>
 
<body>
 
<div style="margin:auto;width:75%;">
<h4 class="i_h4">How to Create a Basic Plugin</h4>
<p>Sometimes you want to make a piece of functionality available throughout your code. </p>
</div>
 
 
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
<script src="js/jquery.setbackground.js"></script> 
<script type="text/javascript">
$(function(){
    // การเรียกใช้งาน plug in
    $(".i_h4").setbackground();
});
</script>
</body>
</html>
 
เนื้อหาในตอนที่ 3 จะแสดงถึง วิธีการส่งค่า options เพื่อให้ 
plugin ของเราใช้งาน


กด Like หรือ Share เป็นกำลังใจ ให้มีบทความใหม่ๆ เรื่อยๆ น่ะครับ



อ่านต่อที่บทความ









เนื้อหาที่เกี่ยวข้อง









URL สำหรับอ้างอิง











เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ