JavaScript实现简单的隐藏式侧边栏功能示例


Posted in Javascript onAugust 31, 2018

本文实例讲述了JavaScript实现简单的隐藏式侧边栏功能。分享给大家供大家参考,具体如下:

常见的隐藏式侧边栏,如分享、联系客服等。通过设置速度来实现滑入滑出的动态效果

以下是代码

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>3water.com js侧边栏</title>
<style type="text/css">
*{margin: 0;padding: 0;}
#div1{width: 160px; height: 320px; background: #fff; /*border: 1px solid red;*/position: relative;left:-140px;top:100px;}
#div1 .hide{width: 140px; height: 320px; background: cyan; float: left;position: absolute;left: 0;top: 0;}
#div1 .show{width: 17px; height: auto;background: skyblue;border: 1px solid #000;float: right; position: absolute; top: 39%;right: 0;}
</style>
<script type="text/javascript">
window.onload=function(){
var oDiv=document.getElementById('div1');
var timer;
oDiv.onmouseover=function(){
//startMove(10,0);speed,end
startMove(0);
//这里稍作优化,原来传入两个参数改为一个参数
};
oDiv.onmouseout=function(){
//startMove(-10,-140);
startMove(-140);
}
function startMove(end){
/*var oDiv=document.getElementById('div1');*/
clearInterval(timer);
timer=setInterval(function(){
var speed=0;
//从-140到0,速度为正,从0到-140,速度为负
if(oDiv.offsetLeft>end){
speed=-10;
}else{
speed=10;
}
if(oDiv.offsetLeft==end){
clearInterval(timer);
}else{
oDiv.style.left=oDiv.offsetLeft+speed+'px';
}
},30);
}
}
</script>
</head>
<body>
<div id="div1">
<div class="hide">
<ul>
<li>qq</li>
<li>weibo</li>
<li>3water</li>
</ul>
</div>
<div class="show">
<span>分享到</span>
</div>
</div>
</body>
</html>

这里使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试效果如下:

JavaScript实现简单的隐藏式侧边栏功能示例

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

Javascript 相关文章推荐
filemanage功能中用到的common.js
Apr 08 Javascript
js之事件冒泡和事件捕获详细介绍
Oct 28 Javascript
浅析js中的浮点型运算问题
Jan 06 Javascript
jquery插件lazyload.js延迟加载图片的使用方法
Feb 19 Javascript
jquery获取复选框被选中的值
Mar 22 Javascript
基于jQuery实现的图片切换焦点图整理
Dec 07 Javascript
BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
Jul 07 Javascript
把json格式的字符串转换成javascript对象或数组的方法总结
Nov 03 Javascript
值得学习的bootstrap fileinput文件上传工具
Nov 08 Javascript
jQuery模拟实现的select点击选择效果【附demo源码下载】
Nov 09 Javascript
AngularJS ui-router刷新子页面路由的方法
Jul 23 Javascript
浅谈react路由传参的几种方式
Mar 23 Javascript
Vue加载组件、动态加载组件的几种方式
Aug 31 #Javascript
Bootstrap模态对话框用法简单示例
Aug 31 #Javascript
微信小程序视图容器(swiper)组件创建轮播图
Jun 19 #Javascript
angular 实时监听input框value值的变化触发函数方法
Aug 31 #Javascript
vuejs实现ready函数加载完之后执行某个函数的方法
Aug 31 #Javascript
JS实现字符串翻转的方法分析
Aug 31 #Javascript
angular实现input输入监听的示例
Aug 31 #Javascript
You might like
ThinkPHP控制器间实现相互调用的方法
2014/10/31 PHP
PHP实现根据时间戳获取周几的方法
2016/02/26 PHP
php 读写json文件及修改json的方法
2018/03/07 PHP
laravel 解决groupBy时出现的错误 isn't in Group By问题
2019/10/17 PHP
在模板页面的js使用办法
2010/04/01 Javascript
SeaJS入门教程系列之使用SeaJS(二)
2014/03/03 Javascript
深入理解javascript作用域和闭包
2014/09/23 Javascript
基于jQuery通过jQuery.form.js插件使用ajax提交form表单
2015/08/17 Javascript
纯javascript代码实现计算器功能(三种方法)
2015/09/07 Javascript
探析浏览器执行JavaScript脚本加载与代码执行顺序
2016/01/12 Javascript
JavaScript编程学习技巧汇总
2016/02/21 Javascript
JS实现鼠标移上去显示图片或微信二维码
2016/12/14 Javascript
Vue非父子组件通信详解
2017/06/12 Javascript
Three.js如何实现雾化效果示例代码
2017/09/27 Javascript
浅谈React Native Flexbox布局(小结)
2018/01/08 Javascript
layui固定下拉框的显示条数(有滚动条)的方法
2019/09/10 Javascript
基于js实现数组相邻元素上移下移
2020/05/19 Javascript
Python编程之微信推送模板消息功能示例
2017/08/21 Python
python使用socket创建tcp服务器和客户端
2018/04/12 Python
python获取响应某个字段值的3种实现方法
2020/04/30 Python
Pytorch之Tensor和Numpy之间的转换的实现方法
2020/09/03 Python
python PIL模块的基本使用
2020/09/29 Python
python 多进程和协程配合使用写入数据
2020/10/30 Python
main 函数执行以前,还会执行什么代码
2013/04/17 面试题
什么是.net
2015/08/03 面试题
面试求职的个人自我评价
2013/11/16 职场文书
我爱读书演讲稿
2014/05/07 职场文书
事业单位鉴定材料
2014/05/25 职场文书
区政府领导班子个人对照检查材料
2014/09/25 职场文书
上课玩手机的检讨书
2014/10/01 职场文书
离婚协议书范文2014(夫妻感情破裂)
2014/12/14 职场文书
2015年青年志愿者协会工作总结
2015/04/27 职场文书
电力工程合作意向书
2015/05/11 职场文书
一行代码python实现文件共享服务器
2021/04/22 Python
动作冒险《Hell Is Us》将采用虚幻5 消灭怪物探索王国
2022/04/13 其他游戏
spring boot实现文件上传
2022/08/14 Java/Android