jquery tab插件制作實現(xiàn)代碼
更新時間:2010年06月22日 23:07:48 作者:
jquery插件豐富,很多都是很好用的,最近學習了一下如何制作jquery插件,發(fā)現(xiàn)jquery插件制作其實很簡單,這里介紹一下。
jquery插件的基本格式:
(function($){
$.fn.tab = function(options){//$.fn后面的tab是這個插件的函數(shù)名稱??梢愿咦约合埠眠M行修改
var defaults = {
//相關屬性設置
}
var options = $.extend(defaults, options);
this.each(function(){
//實現(xiàn)的功能設置 });
};
})(jQuery);
我這里是做一個tab的插件,我來完善以上代碼
(function($){
$.fn.tab = function(options){
var defaults = {
eventname:"click",//觸發(fā)事件,click為點擊,mousemove為鼠標移動
titlekeyid:"tabtitle",//切換的ID
sedcss:"sed",//選中時的CSS
nosedcss:"nosed" //未選中時的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");
//個人JS能力還是有限,感覺代碼寫的不好
});
});
};
})(jQuery);
我想大家都用過一些jquery插件,我這里看下插件使用時的代碼:
(代碼二)
<script type="text/javascript">
$().ready(function(){
$("#tabtitle").tab({eventname:"mousemove",sedcss:"sed"});
})
</script>
結合以上兩段代碼進行說明
$("#tabtitle")表示你要使用在哪個地方,稍微了解jquery的童鞋都知道是什么意思了,不多介紹了,
.tab 就是這個插件我們定義的函數(shù)名了,對照(代碼一)中的$.fn.tab中的tab。
.tab({eventname:"mousemove",sedcss:"sed"}); 中eventname和sedcss就是(代碼一)var defaults ={};中定義的屬性值了。如果我們不需要改變屬性值,那么我們就使用默認的屬性值,那么插件就應該這樣使用
<script type="text/javascript">
$().ready(function(){
$("#tabtitle").tab();
})
</script>
最后附上全部的頁面代碼:
<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對應$("#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對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>
此文重點在說明jquery插件的制作方法,示例中代碼還有要優(yōu)化的地方,請見諒
源碼打包下載
復制代碼 代碼如下:
(function($){
$.fn.tab = function(options){//$.fn后面的tab是這個插件的函數(shù)名稱??梢愿咦约合埠眠M行修改
var defaults = {
//相關屬性設置
}
var options = $.extend(defaults, options);
this.each(function(){
//實現(xiàn)的功能設置 });
};
})(jQuery);
我這里是做一個tab的插件,我來完善以上代碼
復制代碼 代碼如下:
(function($){
$.fn.tab = function(options){
var defaults = {
eventname:"click",//觸發(fā)事件,click為點擊,mousemove為鼠標移動
titlekeyid:"tabtitle",//切換的ID
sedcss:"sed",//選中時的CSS
nosedcss:"nosed" //未選中時的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");
//個人JS能力還是有限,感覺代碼寫的不好
});
});
};
})(jQuery);
我想大家都用過一些jquery插件,我這里看下插件使用時的代碼:
(代碼二)
復制代碼 代碼如下:
<script type="text/javascript">
$().ready(function(){
$("#tabtitle").tab({eventname:"mousemove",sedcss:"sed"});
})
</script>
結合以上兩段代碼進行說明
復制代碼 代碼如下:
$("#tabtitle")表示你要使用在哪個地方,稍微了解jquery的童鞋都知道是什么意思了,不多介紹了,
.tab 就是這個插件我們定義的函數(shù)名了,對照(代碼一)中的$.fn.tab中的tab。
.tab({eventname:"mousemove",sedcss:"sed"}); 中eventname和sedcss就是(代碼一)var defaults ={};中定義的屬性值了。如果我們不需要改變屬性值,那么我們就使用默認的屬性值,那么插件就應該這樣使用
<script type="text/javascript">
$().ready(function(){
$("#tabtitle").tab();
})
</script>
最后附上全部的頁面代碼:
復制代碼 代碼如下:
<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對應$("#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對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>
此文重點在說明jquery插件的制作方法,示例中代碼還有要優(yōu)化的地方,請見諒
源碼打包下載
您可能感興趣的文章:
- 強烈推薦240多個jQuery插件提供下載
- 跟我一起學寫jQuery插件開發(fā)方法(附完整實例及下載)
- 分享20多個很棒的jQuery 文件上傳插件或教程
- jquery插件制作 手風琴Panel效果實現(xiàn)
- jquery插件制作 圖片走廊 gallery
- jquery插件制作 表單驗證實現(xiàn)代碼
- 一個簡單的jQuery插件制作 學習過程及實例
- 一步一步制作jquery插件Tabs實現(xiàn)過程
- jquery插件制作 提示框插件實現(xiàn)代碼
- jQuery焦點圖切換簡易插件制作過程全紀錄
- 基于jquery插件制作左右按鈕與標題文字圖片切換效果
- jquery插件制作 自增長輸入框實現(xiàn)代碼
- jquery插件格式實例分析
相關文章
jQuery ui實現(xiàn)動感的圓角漸變網站導航菜單效果代碼
這篇文章主要介紹了jQuery ui實現(xiàn)動感的圓角漸變網站導航菜單效果代碼,涉及jquery插件構造圓角圖形及頁面過度效果的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-08-08
關于echarts在節(jié)點顯示動態(tài)數(shù)據及添加提示文本所遇到的問題
這篇文章主要介紹了關于echarts在節(jié)點顯示動態(tài)數(shù)據及添加提示文本所遇到的問題,需要的朋友可以參考下2018-04-04
jquery animate實現(xiàn)鼠標放上去顯示離開隱藏效果
本文為大家介紹下使用jquery animate實現(xiàn)鼠標放上去顯示,離開就隱藏的效果,感興趣的朋友可以參考下哈,希望對大家有所幫助2013-07-07
jquery+ajax+text文本框實現(xiàn)智能提示完整實例
這篇文章主要介紹了jquery+ajax+text文本框實現(xiàn)智能提示的方法,涉及jQuery基于ajax交互實現(xiàn)后臺數(shù)據的動態(tài)查詢與文本提示信息的顯示功能,需要的朋友可以參考下2016-07-07
jQuery中checkbox反復調用attr(''checked'', true/false)只有第一次生效的解決方法
這篇文章主要介紹了jQuery中checkbox反復調用attr('checked', true/false)只有第一次生效的解決方法,通過使用prop方法代替attr方法來解決此問題,需要的朋友可以參考下2016-11-11
基于jquery css3實現(xiàn)點擊動畫彈出表單源碼特效
這篇文章主要介紹了基于jquery css3實現(xiàn)點擊動畫彈出表單,彈出的表單沒有任何遮蓋層,在web前端程序開發(fā)中經常會用到,需要的朋友可以參考下2015-08-08

