;(function($){//这里将$符作为匿名函数的形参
/*在此处编写代码,可使用$作为jQuery的缩写别名*/
})(jQuery);//这里将jQuery作为实参传递给匿名函数了
<ul class="list"> <li>导航列表1 <ul class="nav"> <li>导航列表1</li> <li>导航列表2</li> <li>导航列表3</li> <li>导航列表4</li> <li>导航列表5</li> <li>导航列表6</li> </ul> </li> <li>导航列表2 <ul class="nav"> <li>导航列表1</li> <li>导航列表2</li> <li>导航列表3</li> <li>导航列表4</li> <li>导航列表5</li> <li>导航列表6</li> </ul> </li> </ul> <!-- 默认已经引入jquery -->
;(function($){
$.extend({ //插件定义在全局方法上
"nav" : function (color){//传参,这里只是抛砖引玉,在您编写的时候,参数选项可以更加丰富,例如传入json对象等等
$('.nav').css({//对展开的下拉列表设置样式,此处在下面进行详细说明
"list-style" : "none",
"margin" : 0,
"padding" : 0,
"display" : "none",
"color":color//由用户控制hover时,展现出来列表的文字颜色
});
$('.nav').parent().hover(//这里用到了.nav的父节点(就是hover到的元素)
//因为我们只能在插件要求的范围内进行设定,若是使用了外部的选择器,就违背了这个原则
function (){
$(this).find(".nav").stop().slideDown("normal");//注意我们在这里使用了jquery的动画方法
},function (){
$(this).find(".nav").stop().slideUp("normal");//注意stop()的使用,不然会有类似手风琴效果的出现,但那并不是我们需要的
});
}
});
})(jQuery);
.hover{/*插件必须样式*/
list-style: none;
margin:0;
padding: 0;
display: none;
}
$('.nav').addClass("hover");//将CSS与jQuery分离开来
$('.nav').css("color",color);//存在用户设置时启用,不存在就不用了(进行判断)
$(function (){
$.nav("#999");//调用插件实现的全局方法,并且设置其展现背景颜色为#999。
});
;(function($){
$.fn.extend({//定义为局部方法
"nav" : function (color){
$(this).find('.nav').addClass('hover');//上面已经说过了,此时this指向调用该方法的元素
$(this).find('.nav').css("color",color);//在当前元素下,增加了一次find筛选,实现在对应的元素中执行。
$(this).find('.nav').parent().hover(
function (){
$(this).find(".nav").stop().slideDown("normal");
},function (){
$(this).find(".nav").stop().slideUp("normal");
});
return this;//返回当前的对象
}
});
})(jQuery);
$(function (){//这里的eq(0)代表只对第一份起到效果,复制后的没有效果。
//(你可以把上面的find筛选删除之后再试试,您会发现,他又对余下的几份起效果了)
$(".list").eq(0).nav("red");//调用局部方法
});
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有