javascript 实现动态侧边栏实例详解


Posted in Javascript onNovember 11, 2016

javascript 实现动态侧边栏

总的来说就是利用 鼠标悬停onmouseover   和  鼠标移除onmouseout 这两个时间来完成的。

首先是HTML 结构

<body>
<div id="div1">
<span>侧边栏</span>
</div>
</body>

然后是css的样式:

#div1{
  width:150px;
  height:200px;
  background:#999999;
  position:absolute;
  left:-150px;}
span{
  width:20px;
  height:70px;
  line-height:23px;
  background:#09C;
  position:absolute;
  right:-20px;
  top:70px;}

默认的样式 侧边栏是隐藏起来的如图:

 javascript 实现动态侧边栏实例详解

当鼠标移入以后如图:

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>无标题文档</title>
<style type="text/css">
#div1{
  width:150px;
  height:200px;
  background:#999999;
  position:absolute;
  left:-150px;}
span{
  width:20px;
  height:70px;
  line-height:23px;
  background:#09C;
  position:absolute;
  right:-20px;
  top:70px;}
</style>
<script>
window.onload=function(){
  var odiv=document.getElementById('div1');
  odiv.onmouseover=function ()
  {
    
    startmove(0,10);//第一个参数为div  left属性的目标值  第二个为 每次移动多少像素
    
    }
 odiv.onmouseout=function ()
 {
   startmove(-150,-10);
   }
  }
  
  var timer=null;
function startmove(target,speed)
{
   
  var odiv=document.getElementById('div1');
clearInterval(timer);
   timer=setInterval(function (){
    
    if(odiv.offsetLeft==target)
    {
      clearInterval(timer);
      }
      else
      {  
    odiv.style.left=odiv.offsetLeft+speed+'px';
      }
    
    },30)
  
  }
  
</script>
</head>

<body>
<div id="div1">
<span>侧边栏</span>
</div>
</body>
</html>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
html向js方法传递参数具体实现
Aug 08 Javascript
jquery无法设置checkbox选中即没有变成选中状态
Mar 27 Javascript
jquery选择器使用详解
Apr 08 Javascript
AngularJS入门教程(二):AngularJS模板
Dec 06 Javascript
js继承call()和apply()方法总结
Dec 08 Javascript
javascript中异常处理案例(推荐)
Oct 03 Javascript
canvas实现粒子时钟效果
Feb 06 Javascript
微信小程序--组件(swiper)详细介绍
Jun 13 Javascript
原生javascript实现的全屏滚动功能示例
Sep 19 Javascript
详解webpack 打包文件体积过大解决方案(code splitting)
Apr 10 Javascript
判断文字超过2行添加展开按钮,未超过则不显示,溢出部分显示省略号
Apr 28 Javascript
面试中canvas绘制图片模糊图片问题处理
Mar 13 Javascript
玩转NODE.JS(四)-搭建简单的聊天室的代码
Nov 11 #Javascript
JS IOS/iPhone的Safari浏览器不兼容Javascript中的Date()问题如何解决
Nov 11 #Javascript
JSON与XML的区别对比及案例应用
Nov 11 #Javascript
浅谈AngularJS中ng-class的使用方法
Nov 11 #Javascript
JS中数组重排序方法
Nov 11 #Javascript
js编写的treeview使用方法
Nov 11 #Javascript
Vue.js教程之计算属性
Nov 11 #Javascript
You might like
php颜色转换函数hex-rgb(将十六进制格式转成十进制格式)
2013/09/23 PHP
PHP实现生成带背景的图形验证码功能
2016/10/03 PHP
PHP解决中文乱码
2017/04/28 PHP
php插件Xajax使用方法详解
2017/08/31 PHP
checkbox 复选框不能为空
2009/07/11 Javascript
jQuery选择器的工作原理和优化分析
2011/07/25 Javascript
jQuery实现图片信息的浮动显示实例代码
2013/08/28 Javascript
网站繁简切换的JS遇到页面卡死的解决方法
2014/03/12 Javascript
使用jquery.validate自定义方法实现&quot;手机号码或者固话至少填写一个&quot;的逻辑验证
2014/09/01 Javascript
js中split和replace的用法实例
2015/02/28 Javascript
详解angular2实现ng2-router 路由和嵌套路由
2017/03/24 Javascript
angularjs+bootstrap实现自定义分页的实例代码
2017/06/19 Javascript
vue获取dom元素注意事项
2017/12/28 Javascript
es6函数之尾调用优化实例分析
2020/04/25 Javascript
python实现计算资源图标crc值的方法
2014/10/05 Python
python操作sqlite的CRUD实例分析
2015/05/08 Python
python轻松查到删除自己的微信好友
2016/01/10 Python
python读出当前时间精度到秒的代码
2019/07/05 Python
使用Python快乐学数学Github万星神器Manim简介
2019/08/07 Python
Python tensorflow实现mnist手写数字识别示例【非卷积与卷积实现】
2019/12/19 Python
关于Tensorflow 模型持久化详解
2020/02/12 Python
在Python中使用K-Means聚类和PCA主成分分析进行图像压缩
2020/04/10 Python
关于keras中keras.layers.merge的用法说明
2020/05/23 Python
解决img标签上下出现间隙的方法
2016/12/14 HTML / CSS
介绍java中初始化块的使用
2012/09/11 面试题
高校生生产实习自我鉴定
2013/09/21 职场文书
门卫岗位职责
2013/11/15 职场文书
大学学习个人的自我评价
2014/02/18 职场文书
求职简历自我评价范例
2014/03/12 职场文书
幼儿园的门卫岗位职责
2014/04/10 职场文书
反腐倡廉演讲稿
2014/05/22 职场文书
老员工辞职信范文
2015/05/12 职场文书
茶花女读书笔记
2015/06/29 职场文书
城镇居民医疗保险工作总结
2015/08/10 职场文书
2016年党员创先争优公开承诺书
2016/03/25 职场文书
Golang标准库syscall详解(什么是系统调用)
2021/05/25 Golang