編寫自己的jQuery外掛程式簡單實現代碼

來源:互聯網
上載者:User

這裡只闡述如何編寫自己的外掛程式,至於要實現什麼功能,要因人而異了...好了,下面開始...
jQuery外掛程式主要分為三種
1、封裝對象方法的外掛程式
2、封裝全域函數的外掛程式
3、延伸選取器的外掛程式
這裡只編寫前倆種,即比較常見的..
大多數外掛程式都是已這種形式編寫的:
複製代碼 代碼如下:
(function ($) {
/* 這裡放置代碼 */
})(jQuery);

這樣的好處是函數內部依然可以使用$作為jQuery的別名,而不影響到其他庫使用$
jQuery提供了倆個擴充用於編寫外掛程式
$.fn.extend({});用於擴充第一種
$.extend({});用於擴充第二種
以下為實現效果和代碼

複製代碼 代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
<style type="text/css">
li { border: 1px solid #000; cursor: pointer; width: 200px; display: block; }
</style>
<script src="../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
(function ($) {
    $.fn.extend({
      "chgSC": function (options) {
         options = $.extend({ FontSize: "100px", Color: "red" }, options); //這裡用了$.extend方法,擴充一個對象
return this.hover(function () { //return為了保持jQuery的鏈式操作
           $(this).css({ "fontSize": options.FontSize, "color": options.Color });
           }, function () {
     $(this).css({ "fontSize": "", "color": "" });
           });
}
});
$.extend({
        "urlParam": function () {
           var pageUrl = location.search;
             if (pageUrl != "")
         return pageUrl.slice(1);
           else
           return "沒有參數";
           }
        });
})(jQuery);
$(function () {
    $("li").chgSC({ FontSize: "130px" });
  alert($.urlParam());
});
</script>
</head>
<body>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</body>
</html>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.