jquery插件的基本格式:
复制代码 代码如下:
(function($){
$.fn.tab = function(options){//$.fn后面的tab是这个插件的函数名称。可以更具自己喜好进行修改
var defaults = {
//相关属性设置
}
var options = $.extend(defaults, options);
this.each(function(){
//实现的功能设置 });
};
})(jQuery);

我这里是做一个tab的插件,我来完善以上代码
复制代码 代码如下:
(function($){
$.fn.tab = function(options){
var defaults = {
eventname:"click",//触发事件,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 就是这个插件我们定义的函数名了,对照(代码一)中的$.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="/UploadFiles/2021-04-02/jquery.js"></script>
<script type="text/javascript" src="/UploadFiles/2021-04-02/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分别是尾部添加数字
<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分别是尾部添加数字和"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插件的制作方法,示例中代码还有要优化的地方,请见谅
源码打包下载
标签:
jquery,tab,插件

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
狼山资源网 Copyright www.pvsay.com

评论“jquery tab插件制作实现代码”

暂无“jquery tab插件制作实现代码”评论...

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。