|
復(fù)制代碼 代碼如下:
(function($){
$.fn.tab = function(options){//$.fn后面的tab是這個(gè)插件的函數(shù)名稱(chēng)。可以更具自己喜好進(jìn)行修改
var defaults = {
//相關(guān)屬性設(shè)置
}
var options = $.extend(defaults, options);
this.each(function(){
//實(shí)現(xiàn)的功能設(shè)置 });
};
})(jQuery);
我這里是做一個(gè)tab的插件,我來(lái)完善以上代碼
復(fù)制代碼 代碼如下:
(function($){
$.fn.tab = function(options){
var defaults = {
eventname:"click",//觸發(fā)事件,click為點(diǎn)擊,mousemove為鼠標(biāo)移動(dòng)
titlekeyid:"tabtitle",//切換的ID
sedcss:"sed",//選中時(shí)的CSS
nosedcss:"nosed" //未選中時(shí)的CSS
}
var options = $.extend(defaults, options);
this.each(function(){
var tab=$(this);
//綁定事件
$(tab).find("li").bind(options.eventname,function(){
$("#"+options.titlekeyid).find("li").attr("class", options.nosedcss);
$(this).attr("class", options.sedcss);
$("#"+options.titlekeyid+"info").find("div").css("display", "none");
$("#"+$(this).attr("id")+"info").css("display", "block");
//個(gè)人JS能力還是有限,感覺(jué)代碼寫(xiě)的不好
});
});
};
})(jQuery);
我想大家都用過(guò)一些jquery插件,我這里看下插件使用時(shí)的代碼:
(代碼二)
復(fù)制代碼 代碼如下:
<script type="text/Javascript">
$().ready(function(){
$("#tabtitle").tab({eventname:"mousemove",sedcss:"sed"});
})
</script>
結(jié)合以上兩段代碼進(jìn)行說(shuō)明
復(fù)制代碼 代碼如下:
$("#tabtitle")表示你要使用在哪個(gè)地方,稍微了解jquery的童鞋都知道是什么意思了,不多介紹了,
.tab 就是這個(gè)插件我們定義的函數(shù)名了,對(duì)照(代碼一)中的$.fn.tab中的tab。
.tab({eventname:"mousemove",sedcss:"sed"}); 中eventname和sedcss就是(代碼一)var defaults ={};中定義的屬性值了。如果我們不需要改變屬性值,那么我們就使用默認(rèn)的屬性值,那么插件就應(yīng)該這樣使用
<script type="text/Javascript">
$().ready(function(){
$("#tabtitle").tab();
})
</script>
最后附上全部的頁(yè)面代碼:
復(fù)制代碼 代碼如下:
<html>
<head>
<title>tab test</title>
<script type="text/Javascript" src="jquery.js">
</script>
<script type="text/Javascript" src="jquery.joyleetab.js">
</script>
<script type="text/Javascript">
$().ready(function(){
$("#tabtitle").tab({eventname:"mousemove",sedcss:"sed"});
})
</script>
<link href="css.css" rel="stylesheet" type="text/css">
</head>
<body>
<ul id="tabtitle">//這里的ID對(duì)應(yīng)$("#tabtitle")中的ID,LI的ID分別是尾部添加數(shù)字
<li id="tabtitle1" class="sed">asdfasfd</li>
<li id="tabtitle2">asdfasfd</li>
<li id="tabtitle3">asdfasfd</li>
<li id="tabtitle4">asdfasfd</li>
<li id="tabtitle5">asdfasfd</li>
</ul>
<div id="tabtitleinfo">//這里的ID對(duì)ul中的ID,ID分別是尾部添加數(shù)字和"info"
<div id="tabtitle1info" >000000</div>
<div id="tabtitle2info" style=" display:none">111111</div>
<div id="tabtitle3info" style=" display:none">22222</div>
<div id="tabtitle4info" style=" display:none">33333</div>
<div id="tabtitle5info" style=" display:none">44444</div>
</div>
</body>
</html>
此文重點(diǎn)在說(shuō)明jquery插件的制作方法,示例中代碼還有要優(yōu)化的地方,請(qǐng)見(jiàn)諒
源碼打包下載
JavaScript技術(shù):jquery tab插件制作實(shí)現(xiàn)代碼,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。