編寫自己的jQuery插件簡單實現(xiàn)代碼
更新時間:2011年04月19日 23:24:42 作者:
用了這長時間的jQuery,一直也沒怎么寫過jQuery插件,今天簡單實現(xiàn)倆個插件,鞏固下基礎(chǔ)知識。
這里只闡述如何編寫自己的插件,至于要實現(xiàn)什么功能,要因人而異了...好了,下面開始...
jQuery插件主要分為三種
1、封裝對象方法的插件
2、封裝全局函數(shù)的插件
3、擴展選擇器的插件
這里只編寫前倆種,即比較常見的..
大多數(shù)插件都是已這種形式編寫的:
(function ($) {
/* 這里放置代碼 */
})(jQuery);
這樣的好處是函數(shù)內(nèi)部依然可以使用$作為jQuery的別名,而不影響到其他庫使用$
jQuery提供了倆個擴展用于編寫插件
$.fn.extend({});用于擴展第一種
$.extend({});用于擴展第二種
以下為實現(xiàn)效果截圖和代碼

<!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的鏈?zhǔn)讲僮?
$(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 "沒有參數(shù)";
}
});
})(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>
jQuery插件主要分為三種
1、封裝對象方法的插件
2、封裝全局函數(shù)的插件
3、擴展選擇器的插件
這里只編寫前倆種,即比較常見的..
大多數(shù)插件都是已這種形式編寫的:
復(fù)制代碼 代碼如下:
(function ($) {
/* 這里放置代碼 */
})(jQuery);
這樣的好處是函數(shù)內(nèi)部依然可以使用$作為jQuery的別名,而不影響到其他庫使用$
jQuery提供了倆個擴展用于編寫插件
$.fn.extend({});用于擴展第一種
$.extend({});用于擴展第二種
以下為實現(xiàn)效果截圖和代碼

復(fù)制代碼 代碼如下:
<!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的鏈?zhǔn)讲僮?
$(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 "沒有參數(shù)";
}
});
})(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>
相關(guān)文章
jquery表單驗證插件(jquery.validate.js)的3種使用方式
這篇文章主要介紹了jquery表單驗證插件(jquery.validate.js)的3種使用方式,本文用詳細(xì)的代碼實例講解jquery表單驗證插件的使用,需要的朋友可以參考下2015-03-03JQuery的Ajax請求實現(xiàn)局部刷新的簡單實例
本篇文章只要是對JQuery的Ajax請求實現(xiàn)局部刷新的簡單實例進行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02treepanel動態(tài)加載數(shù)據(jù)實現(xiàn)代碼
本文介紹一個treepanel動態(tài)加載數(shù)據(jù)的例子,需要了解的朋友可以參考下2012-12-12jquery動畫2.元素坐標(biāo)動畫效果(創(chuàng)建一個圖片走廊)
今天文章的內(nèi)容是關(guān)于使用jquery的animate方法,修改html元素的position屬性,創(chuàng)建一個圖片走廊2012-08-08jQuery實現(xiàn)為動態(tài)添加的元素綁定事件實例分析
這篇文章主要介紹了jQuery實現(xiàn)為動態(tài)添加的元素綁定事件,結(jié)合實例形式分析了jQuery常見的事件綁定相關(guān)操作技巧與注意事項,需要的朋友可以參考下2018-09-09JQuery中模擬image的ajaxPrefilter與ajaxTransport處理
這篇文章主要介紹了JQuery中模擬image的ajaxPrefilter與ajaxTransport處理,本文直接給出模擬實現(xiàn)代碼,代碼中包含詳細(xì)注釋,需要的朋友可以參考下2015-06-06