[原创]jQuery插件处女座--超链接滑动动画
昨天在网上转悠看到老外一网站的超链接有动画效果,感觉很酷很炫,前几天刚学了jQuery插件的制作,所以想用这个功能练练手。
功能:
当鼠标移到超链接上时,超链接向右缩进并改变样式,鼠标离开时再复原到原来位置。
实现原理:
鼠标移到超链接上时,添加mouseover事件,将此行的padding-left向左移动并添加样式,离开后再将padding-left向右移动并将样式还原。还是比较简单的。
实现代码:
好了,原理想清楚了,就开始写代码吧。
![](/assets/blank.gif)
![](/assets/blank.gif)
$.fn.slide = function (options){
var defaults = {
sLength : 10 // 缩进长度
}
var options = $.extend(defaults,options);
this .each( function (){
// var thisObj = $(this);
// thisObj.find("a").each(function(){
var className = $( this ).attr( " class " );
$( this ).mouseover( function (){
$( this ).animate({marginLeft :options.sLength + ' px ' }, {queue: false , duration: 300 });
}).mouseout( function (){
$( this ).animate({marginLeft : ' 0px ' }, {queue: false , duration: 300 });
});
// });
});
};
})(jQuery);
插件写好了,那怎么用呢?很简单,比如我要把ul下面的所有a标签都实现滑动效果,滑动长度10px,滑动时的样式为hoverClass,那么只需要这样写:
$( " ul li a " ).slide({sLength: 10 ,className: " hoverClass " });
})
好了,看看整体代码吧
![](/assets/blank.gif)
![](/assets/blank.gif)
< html >
< head >
< meta http-equiv ="Content-Type" content ="text/html; charset=utf-8" />
< title ></ title >
< script type ="text/javascript" src ="/js/jquery-1.3.1.min.js" ></ script >
< style type ="text/css" >
ul { float : left ; }
ul li { list-style-type : none ; }
.hoverClass { color : red ; }
.oddClass { color : black ; }
</ style >
< script type ="text/javascript" >
( function ($){
$.fn.slide = function (options){
var defaults = {
sLength : 10 // 缩进长度
}
var options = $.extend(defaults,options);
this .each( function (){
var className = $( this ).attr( " class " );
$( this ).mouseover( function (){
$( this ).animate({marginLeft :options.sLength + ' px ' }, {queue: false , duration: 300 });
}).mouseout( function (){
$( this ).animate({marginLeft : ' 0px ' }, {queue: false , duration: 300 });
});
});
};
})(jQuery);
</ script >
< script >
$( function (){
$( " ul li a " ).slide({sLength: 10 ,className: " hoverClass " });
})
</ script >
</ head >
< body >
< ul >
< li >< a href ="#" class ="oddClass" > 嗨,美女,这是我写的一个jQuery插件! </ a ></ li >
< li >< a href ="#" class ="oddClass" > 先想好做个什么功能 </ a ></ li >
< li >< a href ="#" class ="oddClass" > 不急着写,先想想实现原理 </ a ></ li >
< li >< a href ="#" class ="oddClass" > 一个通用的框架 </ a ></ li >
< li >< a href ="#" class ="oddClass" > 名号、参数和属性 </ a ></ li >
< li >< a href ="#" class ="oddClass" > 开始下半身吧 </ a ></ li >
< li >< a href ="#" class ="oddClass" > 最重要的一步! </ a ></ li >
< li >< a href ="#" class ="oddClass" > ok!来看看一个完整的实例吧! </ a ></ li >
</ ul >
</ body >
< html >
好了,完整的超链接滑动动画插件就完成了。
转载于:https://www.cnblogs.com/Lewis/archive/2010/04/22/1717982.html
[原创]jQuery插件处女座--超链接滑动动画相关推荐
- html首页 slider图片切换效果,jQuery插件Slider Revolution实现响应动画滑动图片切换效果...
jQuery插件Slider Revolution实现响应动画滑动图片切换效果 2018-12-31 编程之家 https://www.jb51.cc 这是一款非常强大的内容切换插件,它基于jQuer ...
- 原创jquery插件treeTable(转)
由于工作需要,要直观的看到某个业务是由那些子业务引起的异常,所以我需要用树表的方式来展现各个层次的数据. 需求: 1.数据层次分明: 2.数据读取慢.需要动态加载孩子节点: 3.支持默认展开多少层. ...
- [原创]jQuery插件Realtime-Modifier正式发布!
请注意: 该插件将于2012-05-01删除 删除原因: 该插件无存在的意义. 有不需要插件的解决方案. 解决方案: 当鼠标滑过Input的时候, 增加边框样式; 当鼠标划出时, 删掉边框样式. 代码 ...
- jq插件处女座 图片轮播
好久没写博客了,变得好懒呀,无地自容.最近一直在学sass和jq插件的写法,照猫画虎的谢了一个jq的插件,也算是第一次真正称得上插件的插件 ,废话不多说 上代码 (function($) { $.fn ...
- 用jquery插件写一个小米官网左侧二级菜单
知识点:静态布局思路,jquery动态布局,代码格式规范,jquery插件调用, 鼠标滑动二级菜单构建. html代码: <div id="Tz_banner">< ...
- 100个优秀jQuery插件精选
100个优秀jQuery插件精选 在2012年里出现了很多很棒的jQuery插件,如结合CSS3的jQuery动画.强大的支持多设备浏览的响应性布局设计.使用视频作为网页设计背景.jQuery图像幻灯 ...
- 推荐60个jQuery插件及使用教程
jQuery插件jQuery Spin Button自定义文本框数值自增或自减 jQuery插件JQuery Pager分页器实现javascript分页功能 jQuery插件FontSizer实现J ...
- 精于图片处理的10款jQuery插件
这篇文章将重点介绍用于图片处理的10个超级jQuery插件,可以生成图片的动画和特效,缩放图片大小等等. 1.AJAX-ZOOM 这个插件非常有趣,可以用来缩放图片,旋转对象(3D特效).查看demo ...
- jQuery Easing 动画效果扩展--使用Easing插件,让你的动画更具美感。
jQuery Easing 是一款比较老的jQuery插件,在很多网站都有应用,尤其是在一些页面滚动.幻灯片切换等场景应用比较多.它非常小巧,且有多种动画方案供选择,使用简单,而且免费. 引入Eas ...
最新文章
- 数据库锁解决并发问题
- Angular jasmine单元测试框架里describe的实现原理
- inception mysql 审核_mysql 审核引擎 goInception 的基本使用
- 模板引擎的简单原理template
- 电芯容量在前期循环中容量增加_锂离子电池容量“跳水”背后元凶找到了!——非均匀压力...
- java经典源码 阅读_公开!阿里甩出“源码阅读指南”,原来源码才是最经典的学习范例...
- Centos Linux 下Pycharm 安装
- 日历 C语言算法,【求助】万年历算法
- mac 修改idea 占用内容_mac之idea卡顿修改内存设置
- leetcode【链表—中等】707.设计链表
- Ubuntu中禁用触摸板
- 结构体复数相乘c语言,复数乘法中的结构体赋值实现代码
- Rust实现:从一组纸牌中挑选Winner纸牌
- 酷睿i5 1240p什么水平 i5 1240p参数 i51240p是标压还是低压
- java 编辑PDF 文件,或者填充数据
- maven基础:mvn命令常用参数整理;如:-am构建指定模块,同时构建指定模块依赖的其他模块
- CSUST 2007 我爱吃烧烤 (状压dp)
- 那堪春景媚,送君千万里
- 三毛面经-MySql面试经历
- 解决Python安装第三方库太慢的问题
热门文章
- 高德地图开发(四、点聚合)
- E440(20C5000T00)简评,拆机图片,安装NGFF固态硬盘
- CSS基础知识(五):水平居中和垂直居中
- 苹果id被停用_苹果 ID 被停用怎么办?
- sqlServer如何实现分页查询
- 惟客数据李柯辰:数字化客户经营的基础、核心与方法|2022全球数字价值峰会
- 智慧园区解决方案,快递管家助力达实大厦快递物流管理数智化升级
- 2022-07-15:一开始有21个球,甲和乙轮流拿球,甲先、乙后, 每个人在自己的回合,一定要拿不超过3个球,不能不拿。 最终谁的总球数为偶数,谁赢。 请问谁有必胜策略。 来自微众。人工智能岗。
- Python 注释详解[学习 Python 必备基础知识][看此一篇就够了]
- 新老手都值得关注的Flink关键技术解析与优化实战