jQuery实现的类flash菜单效果代码


Posted in Javascript onMay 17, 2010

先来看看效果:http://demo.3water.com/js/jquery_flash/demo.htm

因为下面的menu和上面的logo的实现原理一样,为了简化起见,我们这里只拿logo部分的代码来说明一下原理:

HTML代码:

<a id="logotype" href=""><span>Logo Type</span></a>

CSS代码:
a#logotype{ background: url(logotype.jpg) no-repeat top left; display: block; position: relative; height: 70px; width: 119px; } a#logotype span{display:none} a#logotype .hover { background: url(logotype.jpg) no-repeat bottom left; display: block; position: absolute; top: 0; left: 0; height: 70px; width: 119px; } a#logotype{ 
background: url(logotype.jpg) no-repeat top left; 
display: block; 
position: relative; 
height: 70px; 
width: 119px; 
} 
a#logotype span{display:none} 
a#logotype .hover { 
background: url(logotype.jpg) no-repeat bottom left; 
display: block; 
position: absolute; 
top: 0; 
left: 0; 
height: 70px; 
width: 119px; 
}

这里有一个.hover的class,从html中并没有发现,不要着急,这个在后面的js中会用到。

JS代码:

$(function() { var fadeSpeed = ($.browser.safari ? 600 : 450); $('#logotype').append('<span class="hover"></span>'); $('.hover').css('opacity', 0); $('.hover').parent().hover(function() { $('.hover', this).stop().animate({ 'opacity': 1 }, fadeSpeed) }, function() { $('.hover', this).stop().animate({ 'opacity': 0 }, fadeSpeed) }); }); $(function() { 
var fadeSpeed = ($.browser.safari ? 600 : 450); 
$('#logotype').append('<span class="hover"></span>'); 
$('.hover').css('opacity', 0); 
$('.hover').parent().hover(function() { 
$('.hover', this).stop().animate({ 
'opacity': 1 
}, 
fadeSpeed) 
}, 
function() { 
$('.hover', this).stop().animate({ 
'opacity': 0 
}, 
fadeSpeed) 
}); 
});

这段JS很清楚的描述了该效果的实现原理:首先在链接中创建一个class为hover的span(这个span是鼠标放到连接上时的现实效果),并且将其透明度设置为0,然后当鼠标移到连接上时,将该span的透明逐渐调整为1,这样上面的span就会覆盖a的默认效果,这样就实现我们的动画效果。

基于jQuery实现的仿flash菜单效果

Javascript 相关文章推荐
JavaScript脚本性能的优化方法
Feb 02 Javascript
如何创建一个JavaScript弹出DIV窗口层的效果
Sep 25 Javascript
图片动画横条广告带上下滚动的JS代码
Oct 25 Javascript
jQuery中offset()方法用法实例
Jan 16 Javascript
JS组件Bootstrap Select2使用方法详解
Apr 17 Javascript
JavaScript中return用法示例
Nov 29 Javascript
浅谈js中用$(#ID)来作为选择器的问题(id重复的时候)
Feb 14 Javascript
js指定步长实现单方向匀速运动
Jul 17 Javascript
在react中使用vue的状态管理的方法示例
May 02 Javascript
echarts.js 动态生成多个图表 使用vue封装组件操作
Jul 19 Javascript
Vue的自定义组件不能使用click方法的解决
Jul 28 Javascript
Vue实现圆环进度条的示例
Feb 06 Vue.js
Jquery Select操作方法集合脚本之家特别版
May 17 #Javascript
JQuery select标签操作代码段
May 16 #Javascript
js数据验证集合、js email验证、js url验证、js长度验证、js数字验证等简单封装
May 15 #Javascript
Jquery 最近浏览过的商品的功能实现代码
May 14 #Javascript
WEB 浏览器兼容 推荐收藏
May 14 #Javascript
js 数值项目的格式化函数代码
May 14 #Javascript
IE8 中使用加速器(Activities)
May 14 #Javascript
You might like
PHP 获取远程文件内容的函数代码
2010/03/24 PHP
php经典算法集锦
2015/11/14 PHP
PHP扩展Memcache分布式部署方案
2015/12/06 PHP
PHP+Redis事务解决高并发下商品超卖问题(推荐)
2020/08/03 PHP
jQuery中prepend()方法使用详解
2015/08/11 Javascript
微信小程序之MaterialDesign--input组件详解
2017/02/15 Javascript
关于axios返回空对象的问题解决
2017/04/04 Javascript
JS判断Android、iOS或浏览器的多种方法(四种方法)
2017/06/29 Javascript
基于js粘贴事件paste简单解析以及遇到的坑
2017/09/07 Javascript
nodejs项目windows下开机自启动的方法
2017/11/22 NodeJs
手写Node静态资源服务器的实现方法
2018/03/20 Javascript
微信小程序云开发之云函数详解
2019/05/16 Javascript
解决Idea、WebStorm下使用Vue cli脚手架项目无法使用Webpack别名的问题
2019/10/11 Javascript
JS严格模式原理与用法实例分析
2020/04/27 Javascript
javascript 模块依赖管理的本质深入详解
2020/04/30 Javascript
浅谈vant组件Picker 选择器选单选问题
2020/11/04 Javascript
[01:32]TI珍贵瞬间系列(一)
2020/08/26 DOTA
python根据给定文件返回文件名和扩展名的方法
2015/03/27 Python
python二分查找算法的递归实现方法
2016/05/12 Python
Python视频爬虫实现下载头条视频功能示例
2018/05/07 Python
Python制作exe文件简单流程
2019/01/24 Python
动态设置django的model field的默认值操作步骤
2020/03/30 Python
CSS3实现可关闭的下拉手风琴菜单效果
2015/08/31 HTML / CSS
canvas线条的属性详解
2018/03/27 HTML / CSS
优纳科技软件测试面试题
2012/05/15 面试题
金鑫耀Java笔试题
2014/09/06 面试题
物理教师自荐信范文
2013/12/28 职场文书
在校生自我鉴定
2014/01/23 职场文书
物理专业本科生自荐信
2014/01/30 职场文书
俞敏洪励志演讲稿
2014/04/29 职场文书
物流管理系毕业生求职信
2014/06/03 职场文书
2016年4月份红领巾广播稿
2015/12/21 职场文书
python flask框架快速入门
2021/05/14 Python
redis哨兵常用命令和监控示例详解
2021/05/27 Redis
MyBatis自定义SQL拦截器示例详解
2021/10/24 Java/Android
MySQL中LAG()函数和LEAD()函数的使用
2022/08/14 MySQL