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 相关文章推荐
一个可以显示阴历的JS代码
Mar 05 Javascript
js打印纸函数代码(递归)
Jun 18 Javascript
用Jquery实现多级下拉框无刷新的联动
Dec 22 Javascript
Javascript Boolean、Nnumber、String 强制类型转换的区别详细介绍
Dec 13 Javascript
博客侧边栏模块跟随滚动条滑动固定效果的实现方法(js+jquery等)
Mar 24 Javascript
JavaScript校验Number(4,1)格式的数字实例代码
Mar 13 Javascript
layui分页效果实现代码
May 19 Javascript
Bootstrap输入框组件使用详解
Jun 09 Javascript
vue.js学习之vue-cli定制脚手架详解
Jul 02 Javascript
移动前端图片压缩上传的实例
Dec 06 Javascript
vue2.0 解决抽取公用js的问题
Jul 31 Javascript
详解jQuery的核心函数和事件处理
Feb 18 jQuery
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合并discuz用户脚本的方法
2015/08/04 PHP
高质量PHP代码的50个实用技巧必备(下)
2016/01/22 PHP
PHP+redis实现微博的拉模型案例详解
2019/07/10 PHP
Dom 是什么的详细说明
2010/10/25 Javascript
分享精心挑选的23款美轮美奂的jQuery 图片特效插件
2012/08/14 Javascript
ff下JQuery无法监听input的keyup事件的解决方法
2013/12/12 Javascript
删除Javascript Object中间的key
2014/11/18 Javascript
JavaScript实现查找字符串中第一个不重复的字符
2014/12/29 Javascript
js获取会话框prompt的返回值的方法
2015/01/10 Javascript
详解Bootstrap按钮
2016/01/04 Javascript
JavaScript实现数组降维详解
2017/01/05 Javascript
JQueryMiniUI按照时间进行查询的实现方法
2017/06/07 jQuery
微信小程序实践之动态控制组件的显示/隐藏功能
2018/07/18 Javascript
vue-vuex中使用commit提交mutation来修改state的方法详解
2018/09/16 Javascript
Node+OCR实现图像文字识别功能
2018/11/26 Javascript
javascript Canvas动态粒子连线
2020/01/01 Javascript
如何利用JavaScript编写更好的条件语句详解
2020/08/10 Javascript
简介Python中用于处理字符串的center()方法
2015/05/18 Python
Python md5与sha1加密算法用法分析
2017/07/14 Python
python中文编码与json中文输出问题详解
2018/08/24 Python
python修改txt文件中的某一项方法
2018/12/29 Python
Python连接mysql方法及常用参数
2020/09/01 Python
植物选择:Botanic Choice
2017/02/15 全球购物
Jacques Lemans德国:奥地利钟表品牌
2019/12/26 全球购物
C/C++ 笔试、面试题目大汇总
2015/11/21 面试题
路由表示做什么用的?在linux环境中怎么来配置一条默认路由?
2013/06/07 面试题
什么是会话Bean
2015/05/14 面试题
公司人力资源的自我评价
2014/01/02 职场文书
教学器材管理制度
2014/01/26 职场文书
投资意向书范本
2014/04/01 职场文书
会计学毕业生求职信
2014/06/25 职场文书
大学感恩节活动策划方案
2014/10/11 职场文书
2014司机年终工作总结
2014/12/05 职场文书
Java中try catch处理异常示例
2021/12/06 Java/Android
三种方式清除vue路由跳转router-link的历史记录
2022/04/10 Vue.js
MySQL深分页问题解决思路
2022/12/24 MySQL