鼠标放上去,列表菜单后移动的jquery代码--jquery插件的写法

html代码:

<ul id="catagory">
<li id="7"><a href="#">jQuery</a></li>
<li><a href="#">Asp.net</a></li>
<li><a href="#">Sql Server</a></li>
<li><a href="#">CSS</a></li>
</ul>

js代码:

//为避免冲突,将定义的方法用一个匿名的方法包裹起来
(function ($) {
//扩展这个方法到jquery
//$.fn是jquery的命名空间,加上fn上的属性和方法,会对jquery每一个实例有效
//如扩展$.fn.abc(),即$.fn.abc()是对jquery扩展了一个abc方法,那么后面你的每一个jquery实例都可以引用这个方法了
//那么你可以这样子:$("#div").abc();
//jQuery.extend(object); 用来在jQuery命名空间上增加新函数。
//jQuery.fn.extend(object);给jQuery对象添加方法。

$.fn.extend({
//(方法)插件名称 - paddingList
//将可选择的变量传给方法
paddingList: function (options) {

//参数和默认值
var defaults = {
animatePadding: 10,
hoverColor: "Black",

};

var options = $.extend(defaults, options);

//遍历匹配函数的集合
return this.each(function () {
var o = options;

//将元素集合赋给变量 本例中是 ul对象
var obj = $("ul");

//得到ul中的a对象
var items = $("li a", obj);

//添加hover()事件到a
items.hover(function () {
$(this).css("color", o.hoverColor);
//queue false表示不添加到动画队列中
$(this).animate({ paddingLeft: o.animatePadding }, { queue: false, duration: 300 });

}, function () {
$(this).css("color", "#000000");
$(this).animate({ paddingLeft: "0" }, { queue: true, duration: 300 });
});

});
}
});
})(jQuery);

使用插件的方法:

$(document).ready(function(){

$("#catagory").paddingList({ animatePadding:30, hoverColor:"Red" });

});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值