JS实现滑动导航效果


Posted in Javascript onJanuary 14, 2020

本文实例为大家分享了JS实现滑动导航效果的具体代码,供大家参考,具体内容如下

<!doctype html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport"
   content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>Document</title>
 <style>
  * {
   padding: 0;
   margin: 0;
  }
  ul {
   list-style-type: none;
   height: 42px;
   position: absolute;
  }
  img {
   vertical-align: middle;
  }
  li,
  a {
   cursor: pointer;
  }
  a {
   text-decoration: none;
   color: #000000;
   display: block;
  }
  li {
   width: 83px;
   height: 42px;
   /*background-color: pink;*/
   float: left;
   text-align: center;
   line-height: 42px;
  }
  .box {
   position: relative;
   width: 530px;
   height: 42px;
   border: 1px solid deepskyblue;
   margin: 100px auto;
   -webkit-border-radius: 10px;
   -moz-border-radius: 10px;
   border-radius: 10px;
  }
  .box img#cloud {
   width: 83px;
   height: 42px;
   position: absolute;
   left: 0;
   top: 0;
  }
  .box img#xinhao {
   position: absolute;
   right: 0;
   top: 50%;
   transform: translateY(-50%);
  }
 </style>
</head>
<body>
<div class="box" id="box">
 <img id="cloud" src="images/cloud.gif" alt="" />
 <ul id="ull">
  <li><a href="#">长沙校区</a></li>
  <li><a href="#">长沙校区</a></li>
  <li><a href="#">长沙校区</a></li>
  <li><a href="#">长沙校区</a></li>
  <li><a href="#">长沙校区</a></li>
  <li><a href="#">长沙校区</a></li>
 </ul>
 <img id="xinhao" src="images/rss.png" alt="" />
</div>
<script src="js/common.js"></script>
<script src="js/changespead.js"></script>
<script>
 //获取每一个li
 var list=my$('ull').children;
 console.log(list);
 //获取到筋斗云图片
 var im=my$('cloud');
 //获取图片的宽度
 var imgWidth=im.offsetWidth;
 console.log(imgWidth);
 for(var i=0;i<list.length;i++){
  //设置index值用来储存移动的距离
  list[i].setAttribute('index',i);
  //遍历所有li,每个li绑定三个时间指向同一个函数f1
  list[i].onmouseover=f1;
  list[i].onmouseout=f1;
  list[i].onclick=f1;
  //实现函数f1
  function f1(e){
   switch(e.type) {
    case 'mouseover':
     //获取当前li的index值
     index=this.getAttribute('index');
     //调用变速移动函数
     movecs(im,imgWidth*index);
     break;
    case 'click':
     index=this.getAttribute('index');
     //点击之后固定
     im.style.left=imgWidth*index+'px';
     //点击了其中一个li之后的操作,移开鼠标之后不会弹回去
     this.onmouseout=false;
     for(var k=0;k<list.length;k++){
      list[k].setAttribute('jndex',k);

      list[k].onmouseover=function(){
       jndex=this.getAttribute('jndex');
       movecs(im,imgWidth*jndex);
      };
      list[k].onmouseout=function(){
       movecs(im,imgWidth*index);
      };
     }
     break;
    case 'mouseout':

     index=0;
     movecs(im,imgWidth*index);
     break;
   }
  }
 }



 /*list[i].onmouseover=function(){
   index=this.getAttribute('index');
   console.log(index);
   movecs(im,imgWidth*index);
  };
  list[i].onmouseout=function(){
   index=0;
   // im.style.left='0px';
   movecs(im,imgWidth*index);
  };

  list[i].onclick=function(){
   index=this.getAttribute('index');
   im.style.left=imgWidth*index+'px';
   alert(index);
  };*/
</script>
</body>
</html>

最终效果如下:云彩跟随鼠标移动,点击固定

JS实现滑动导航效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
完美兼容IE,chrome,ff的设为首页、加入收藏及保存到桌面js代码
Dec 17 Javascript
如何解决IONIC页面底部被遮住无法向上滚动问题
Sep 06 Javascript
Bootstrap 表单验证formValidation 实现远程验证功能
May 17 Javascript
10行原生JS实现文字无缝滚动(超简单)
Jan 02 Javascript
浅谈es6中export和export default的作用及区别
Feb 07 Javascript
如何提升vue.js中大型数据的性能
Jun 21 Javascript
React组件对子组件children进行加强的方法
Jun 23 Javascript
解决layui 表单元素radio不显示渲染的问题
Sep 04 Javascript
在VUE中实现文件下载并判断状态的方法
Nov 08 Javascript
ElementUI Tree 树形控件的使用并给节点添加图标
Feb 27 Javascript
vue tab滚动到一定高度,固定在顶部,点击tab切换不同的内容操作
Jul 22 Javascript
原生JavaScript实现轮播图
Jan 10 Javascript
解决 window.onload 被覆盖的问题方法
Jan 14 #Javascript
vue quill editor 使用富文本添加上传音频功能
Jan 14 #Javascript
JavaScript事件冒泡机制原理实例解析
Jan 14 #Javascript
JS window对象简单操作完整示例
Jan 14 #Javascript
让mocha支持ES6模块的方法实现
Jan 14 #Javascript
JavaScript遍历数组的方法代码实例
Jan 14 #Javascript
JavaScript回调函数callback用法解析
Jan 14 #Javascript
You might like
dedecms防止FCK乱格式化你的代码的修改方法
2007/03/17 PHP
php的日期处理函数及uchome的function_coomon中日期处理函数的研究
2011/01/12 PHP
深入apache host的配置详解
2013/06/09 PHP
浅析php与数据库代码开发规范
2013/08/08 PHP
修改ThinkPHP缓存为Memcache的方法
2014/06/25 PHP
php生成zip文件类实例
2015/04/07 PHP
php中的抽象方法和抽象类
2017/02/14 PHP
PHP+MySQL实现在线测试答题实例
2020/01/02 PHP
关于Mozilla浏览器不支持innerText的解决办法
2011/01/01 Javascript
在浏览器中获取当前执行的脚本文件名的代码
2011/07/19 Javascript
关于eval 与new Function 到底该选哪个?
2013/04/17 Javascript
JQuery判断子iframe何时加载完成解决方案
2013/08/20 Javascript
简体中文转换繁体中文(实现代码)
2013/12/25 Javascript
调用jQuery滑出效果时闪烁的解决方法
2014/03/27 Javascript
javascript框架设计读书笔记之字符串的扩展和修复
2014/12/02 Javascript
jquery简单的弹出层浮动层代码
2015/04/27 Javascript
cocos2dx骨骼动画Armature源码剖析(三)
2015/09/08 Javascript
JS触发服务器控件的单击事件(详解)
2016/08/06 Javascript
vue引入swiper插件的使用实例
2017/07/19 Javascript
vue-router 导航钩子的具体使用方法
2017/08/31 Javascript
JavaScript+CSS相册特效实例代码
2017/09/07 Javascript
vue基于两个计算属性实现选中和全选功能示例
2019/02/08 Javascript
JS倒计时两种实现方式代码实例
2020/07/27 Javascript
python进阶教程之循环对象
2014/08/30 Python
kNN算法python实现和简单数字识别的方法
2014/11/18 Python
Django框架教程之正则表达式URL误区详解
2018/01/28 Python
Python中Unittest框架的具体使用
2019/08/27 Python
django Layui界面点击弹出对话框并请求逻辑生成分页的动态表格实例
2020/05/12 Python
浅谈keras中自定义二分类任务评价指标metrics的方法以及代码
2020/06/11 Python
ASICS印度官方网站:日本专业运动品牌
2020/06/20 全球购物
酒吧副总经理岗位职责
2013/12/10 职场文书
医科大学毕业生自荐信
2014/02/03 职场文书
课程改革实施方案
2014/03/16 职场文书
中秋节主持词
2014/04/02 职场文书
公司新员工欢迎词
2015/09/30 职场文书
DjangoRestFramework 使用 simpleJWT 登陆认证完整记录
2021/06/22 Python