javascript实现超炫的向上滑行菜单实例


Posted in Javascript onAugust 03, 2015

本文实例讲述了javascript实现超炫的向上滑行菜单。分享给大家供大家参考。具体如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>JS实现文字上下滑动导航</title>
<style type="text/css"> 
body { margin:0; background:#66FF99; }
ul { padding-left:0; margin:0; }
li { list-style:none; }
#nav { height:40px; background:#900; margin-top:50px; }
#nav ul { width:240px; height:40px; margin:0 auto; }
#nav li {height:40px; width:240px;}
#nav a { float:left; width:240px;position:relative; height:40px; overflow:hidden; font-size:14px; color:#e0e03a; text-decoration:none; cursor:pointer; }
#nav strong { float:left;width:240px; }
#nav span { float:left;width:200px; padding:0 20px; height:40px; line-height:40px; background:#900; clear:both; white-space:nowrap;}
#nav .active,#nav .current span { background:#600; color:#fff; }
#nav .current .active { color:#e0e03a; }
</style>
<script> 
window.onload=function()
{
 var oDiv=document.getElementById('nav');
 var aStrong=oDiv.getElementsByTagName('strong');
 var aA=oDiv.getElementsByTagName('a');
 var iTarget=oDiv.getElementsByTagName('li')[0].offsetHeight;
 for(var i=0; i<aStrong.length; i++)
 {
  aA[i].style.width=aStrong[i].style.width=aStrong[i].getElementsByTagName('span')[0].offsetWidth+'px';
  aStrong[i].style.position='absolute';
  aStrong[i].style.top=aStrong[i].style.left=0;
  aStrong[i].onmouseover=function()
  {
   startMove(this, -iTarget);
  };
  aStrong[i].onmouseout=function()
  {
   startMove(this, 0);
  };
 }
};
function startMove(obj,target)
{
 clearInterval(obj.iTime);
 obj.iTime=setInterval(function(){
  if(obj.offsetTop==target)
  {
   clearInterval(obj.iTime);
  }
  else
  {
   var iSpeed=(target-obj.offsetTop)/4;
   iSpeed=iSpeed>0?Math.ceil(iSpeed):Math.floor(iSpeed);
   obj.style.top=obj.offsetTop+iSpeed+'px';
  }
 }, 30);
}
</script>
</head>
<body>
<div id="nav">
 <ul>
  <li class="current">
   <a href="#">
    <strong>
     <span>首页</span>
     <span class="active">首页</span>
    </strong>
   </a>
  </li>
  <li>
   <a href="#">
    <strong>
     <span>前端开发课程</span>
     <span class="active">前端开发课程</span>
    </strong>
   </a>
  </li>
  <li>
   <a href="#">
    <strong>
     <span>妙味视频教程</span>
     <span class="active">妙味视频教程</span>
    </strong>
   </a>
  </li>
  <li>
   <a href="#">
    <strong>
     <span>周末班上课安排</span>
     <span class="active">周末班上课安排</span>
    </strong>
   </a>
  </li>
  <li>
   <a href="#">
    <strong>
     <span>结课标准</span>
     <span class="active">结课标准</span>
    </strong>
   </a>
  </li>
  <li>
   <a href="#">
    <strong>
     <span>联系妙味</span>
     <span class="active">联系妙味</span>
    </strong>
   </a>
  </li>
 </ul>
</div>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
How to Auto Include a Javascript File
Feb 02 Javascript
js event事件的传递与冒泡处理
Dec 06 Javascript
js实现仿百度瀑布流的方法
Feb 05 Javascript
jQuery.position()方法获取不到值的安全替换方法
Mar 13 Javascript
Vue数据驱动模拟实现3
Jan 11 Javascript
Vue中的scoped实现原理及穿透方法
May 15 Javascript
React.js绑定this的5种方法(小结)
Jun 05 Javascript
js实现鼠标拖拽缩放div实例代码
Mar 25 Javascript
使用axios请求时,发送formData请求的示例
Oct 29 Javascript
24行JavaScript代码实现Redux的方法实例
Nov 17 Javascript
微信小程序之滑动页面隐藏和显示组件功能的实现代码
Jun 19 Javascript
vue 项目中当访问路由不存在的时候默认访问404页面操作
Aug 31 Javascript
提高jQuery性能优化的技巧
Aug 03 #Javascript
jquery简单实现幻灯片的方法
Aug 03 #Javascript
JS拖拽插件实现步骤
Aug 03 #Javascript
javascript实现的淘宝旅行通用日历组件用法实例
Aug 03 #Javascript
javascript简单实现类似QQ头像弹出效果的方法
Aug 03 #Javascript
比例尺、缩略图、平移缩放之百度地图添加控件方法
Aug 03 #Javascript
浅谈JavaScript中setInterval和setTimeout的使用问题
Aug 01 #Javascript
You might like
joomla jce editor 解决上传中文名文件失败问题
2013/06/09 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
2017/09/29 PHP
基于jquery的3d效果实现代码
2011/03/23 Javascript
文本框文本自动补全效果示例分享
2014/01/19 Javascript
基于javascript实现的搜索时自动提示功能
2014/12/26 Javascript
JavaScript判断前缀、后缀是否是空格的方法
2015/04/15 Javascript
jQuery过滤HTML标签并高亮显示关键字的方法
2015/08/07 Javascript
页面向下滚动ajax获取数据的实现方法(兼容手机)
2016/05/24 Javascript
微信小程序  modal弹框组件详解
2016/10/27 Javascript
xmlplus组件设计系列之选项卡(Tabbar)(5)
2017/05/03 Javascript
浅谈Express异步进化史
2017/09/09 Javascript
vue中input的v-model清空操作
2019/09/06 Javascript
在vue中根据光标的显示与消失实现下拉列表
2019/09/29 Javascript
[02:39]DOTA2国际邀请赛助威团西雅图第一天
2013/08/08 DOTA
[02:51]2014DOTA2 TI小组赛总结中国军团全部进军钥匙球馆
2014/07/15 DOTA
python 将字符串转换成字典dict
2013/03/24 Python
Python实现国外赌场热门游戏Craps(双骰子)
2015/03/31 Python
Python实现优先级队列结构的方法详解
2016/06/02 Python
python实现逆序输出一个数字的示例讲解
2018/06/25 Python
Flask框架响应、调度方法和蓝图操作实例分析
2018/07/24 Python
Python二叉树的遍历操作示例【前序遍历,中序遍历,后序遍历,层序遍历】
2018/12/24 Python
使用jupyter notebook将文件保存为Markdown,HTML等文件格式
2020/04/14 Python
Python读取Excel一列并计算所有对象出现次数的方法
2020/09/04 Python
python脚本定时发送邮件
2020/12/22 Python
美国顶尖折扣时尚购物网:Bluefly
2016/08/28 全球购物
Asics日本官网:鬼冢八喜郎创立的跑鞋运动品牌
2017/10/18 全球购物
在网上学习全世界最好的课程:Coursera
2017/11/07 全球购物
.NET程序员的几道面试题
2012/06/01 面试题
抵押贷款承诺书
2014/05/30 职场文书
小学生国庆65周年演讲稿范文(2篇)
2014/09/21 职场文书
不同意离婚代理词
2015/05/23 职场文书
一百条裙子读书笔记
2015/07/01 职场文书
2019毕业论文致谢词
2019/06/24 职场文书
Django集成富文本编辑器summernote的实现步骤
2021/05/31 Python
详解Spring Boot使用系统参数表提升系统的灵活性
2021/06/30 Java/Android
Python实现仓库管理系统
2022/05/30 Python