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 相关文章推荐
浅析JavaScript中的delete运算符
Nov 30 Javascript
wap手机图片滑动切换特效无css3元素js脚本编写
Jul 28 Javascript
jQuery将所有被选中的checkbox某个属性值连接成字符串的方法
Jan 24 Javascript
AngularJS constant和value区别详解
Feb 28 Javascript
重新理解JavaScript的六种继承方式
Mar 24 Javascript
Javascript es7中比较实用的两个方法示例
Jul 21 Javascript
Redux 和 Mobx的选择问题:让你不再困惑!
Sep 18 Javascript
微信小程序网络封装(简单高效)
Aug 06 Javascript
Vue文件配置全局变量的实例
Sep 06 Javascript
浅谈Vue 性能优化之深挖数组
Dec 11 Javascript
使用apifm-wxapi模块中的问题及解决方法
Aug 05 Javascript
详解webpack-dev-middleware 源码解读
Mar 23 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
用PHP和ACCESS写聊天室(一)
2006/10/09 PHP
从一个不错的留言本弄的mysql数据库操作类
2007/09/02 PHP
php结合ajax实现赞、顶、踩功能实例
2014/05/12 PHP
CI框架的安全性分析
2016/05/18 PHP
php 如何禁用eval() 函数实例详解
2016/12/01 PHP
php strftime函数的详细用法
2018/06/21 PHP
Jquery从头学起第四讲 jquery入门教程
2010/08/01 Javascript
基于jquery的拖动布局插件
2011/11/25 Javascript
基于jquery的滚动条滚动固定div(附演示下载)
2012/10/29 Javascript
javascript四舍五入函数代码分享(保留后几位)
2013/12/10 Javascript
js的匿名函数使用介绍
2013/12/11 Javascript
jQuery实现验证年龄简单思路
2016/02/24 Javascript
JS实现微信弹出搜索框 多条件查询功能
2016/12/13 Javascript
微信小程序报错:this.setData is not a function的解决办法
2017/09/27 Javascript
微信小程序 页面滑动事件的实例详解
2017/10/12 Javascript
vue打包后显示空白正确处理方法
2017/11/01 Javascript
vue init webpack myproject构建项目 ip不能访问的解决方法
2018/03/20 Javascript
Vue实现textarea固定输入行数与添加下划线样式的思路详解
2018/06/28 Javascript
Python 字典dict使用介绍
2014/11/30 Python
用ReactJS和Python的Flask框架编写留言板的代码示例
2015/12/19 Python
python设计模式大全
2016/06/27 Python
python利用不到一百行代码实现一个小siri
2017/03/02 Python
Python探索之修改Python搜索路径
2017/10/25 Python
Python 函数基础知识汇总
2018/03/09 Python
PyQt5每天必学之关闭窗口
2018/04/19 Python
解决Pycharm无法import自己安装的第三方module问题
2018/05/18 Python
python 视频下载神器(you-get)的具体使用
2021/01/06 Python
tensorflow与numpy的版本兼容性问题的解决
2021/01/08 Python
HTML5中的Web Notification桌面通知功能的实现方法
2019/07/29 HTML / CSS
惠普加拿大在线商店:HP加拿大
2017/09/15 全球购物
某/etc/fstab文件中的某行如下: /dev/had5 /mnt/dosdata msdos defaults,usrquota 1 2 请解释其含义
2013/04/11 面试题
房展策划方案
2014/06/07 职场文书
我们的节日国庆活动方案
2014/08/19 职场文书
党的群众路线教育实践活动个人整改措施落实情况
2014/11/04 职场文书
CSS3 实现NES游戏机的示例代码
2021/04/21 HTML / CSS
如何利用opencv判断两张图片是否相同详解
2021/07/07 Python