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 相关文章推荐
表单的一些基本用法与技巧
Jul 15 Javascript
!DOCTYPE声明对JavaScript的影响分析
Apr 12 Javascript
了解jQuery技巧来提高你的代码(个人觉得那个jquery的手册很不错)
Feb 10 Javascript
js中array的sort()方法使用介绍
Feb 20 Javascript
Jquery Ajax xmlhttp请求成功问题
Feb 04 Javascript
jQuery的Ajax用户认证和注册技术实例教程(附demo源码)
Dec 08 Javascript
微信小程序(应用号)简单实例应用及实例详解
Sep 26 Javascript
Angular 2 利用Router事件和Title实现动态页面标题的方法
Aug 23 Javascript
JavaScript for循环 if判断语句(学习笔记)
Oct 11 Javascript
开发一个Parcel-vue脚手架工具(详细步骤)
Sep 22 Javascript
基于jquery实现的tab选项卡功能示例【附源码下载】
Jun 10 jQuery
JS开发前端团队展示控制器来为成员引流
Aug 14 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
欧美媒体选出10年前最流行的17部动画
2017/01/18 日漫
兼容PHP和Java的des加密解密代码分享
2014/06/26 PHP
WordPress中用于检索模版的相关PHP函数使用解析
2015/12/15 PHP
PHP转换文本框内容为HTML格式的方法
2016/07/20 PHP
JCalendar 日历控件 v1.0 beta[兼容IE&amp;Firefox] 有文档和例子
2007/05/30 Javascript
javascript 动态设置已知select的option的value值的代码
2009/12/16 Javascript
js下拉框二级关联菜单效果代码具体实现
2013/08/03 Javascript
extjs render 用法介绍
2013/09/11 Javascript
JavaScript实现计算字符串中出现次数最多的字符和出现的次数
2015/03/12 Javascript
jQuery插件StickUp实现网页导航置顶
2015/04/12 Javascript
jquery结婚电子请柬特效源码分享
2015/08/21 Javascript
JavaScript知识点总结(六)之JavaScript判断变量数据类型
2016/05/31 Javascript
JS 动态判断PC和手机浏览器实现代码
2016/09/21 Javascript
bootstrap fileinput 上传插件的基础使用
2017/02/17 Javascript
js eval函数使用,js对象和字符串互转实例
2017/03/06 Javascript
微信小程序input框中加入小图标的实现方法
2018/06/19 Javascript
小程序开发基础之view视图容器
2018/08/21 Javascript
微信JS-SDK实现微信会员卡功能(给用户微信卡包里发送会员卡)
2019/07/25 Javascript
简单了解常用的JavaScript 库
2020/07/16 Javascript
[36:16]完美世界DOTA2联赛PWL S3 access vs Rebirth 第一场 12.19
2020/12/24 DOTA
Python编程中字符串和列表的基本知识讲解
2015/10/14 Python
Python 装饰器深入理解
2017/03/16 Python
Python读写zip压缩文件的方法
2018/08/29 Python
对pytorch中的梯度更新方法详解
2019/08/20 Python
python函数装饰器之带参数的函数和带参数的装饰器用法示例
2019/11/06 Python
python将数组n等分的实例
2019/12/02 Python
使用Python爬虫库requests发送表单数据和JSON数据
2020/01/25 Python
python轮询机制控制led实例
2020/05/03 Python
Python实现CAN报文转换工具教程
2020/05/05 Python
python让函数不返回结果的方法
2020/06/22 Python
css3边框_动力节点Java学院整理
2017/07/11 HTML / CSS
html如何对span设置宽度
2019/10/30 HTML / CSS
平面设计的岗位职责
2013/11/08 职场文书
爱情保证书范文
2014/02/01 职场文书
2014年标准化工作总结
2014/12/17 职场文书
一年级下册数学教学反思
2016/02/16 职场文书