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 相关文章推荐
jQuery 插件 将this下的div轮番显示
Apr 09 Javascript
js如何实现淡入淡出效果
Nov 18 Javascript
Vue2.0 UI框架ElementUI使用方法详解
Apr 14 Javascript
SVG动画vivus.js库使用小结(实例代码)
Sep 14 Javascript
vue-star评星组件开发实例
Mar 01 Javascript
Vue+mui实现图片的本地缓存示例代码
May 24 Javascript
vue-router之nuxt动态路由设置的两种方法小结
Sep 26 Javascript
使用react context 实现vue插槽slot功能
Jul 18 Javascript
layui固定下拉框的显示条数(有滚动条)的方法
Sep 10 Javascript
JS实现移动端可折叠导航菜单(现代都市风)
Jul 07 Javascript
JS实现公告上线滚动效果
Jan 10 Javascript
学习 Vue.js 遇到的那些坑
Feb 02 Vue.js
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
用php实现批量查询清除一句话后门的代码
2008/01/20 PHP
Linux Apache PHP Oracle 安装配置(具体操作步骤)
2013/06/17 PHP
php警告Creating default object from empty value 问题的解决方法
2014/04/02 PHP
ThinkPHP调用百度翻译类实现在线翻译
2014/06/26 PHP
使用PHPCMS搭建wap手机网站
2015/09/20 PHP
yii2使用GridView实现数据全选及批量删除按钮示例
2017/03/01 PHP
JavaScript 通过模式匹配实现重载
2010/08/12 Javascript
防止按钮在短时间内被多次点击的方法
2014/03/10 Javascript
深入理解JavaScript系列(25):设计模式之单例模式详解
2015/03/03 Javascript
简介JavaScript中valueOf()方法的使用
2015/06/05 Javascript
js+html5操作sqlite数据库的方法
2016/02/02 Javascript
什么是JavaScript注入攻击?
2016/09/14 Javascript
JS如何生成一个不重复的ID的函数
2016/12/25 Javascript
canvas实现钟表效果
2017/02/13 Javascript
提高Web性能的前端优化技巧总结
2017/02/27 Javascript
jQuery简单实现MD5加密的方法
2017/03/03 Javascript
利用JavaScript在网页实现八数码启发式A*算法动画效果
2017/04/16 Javascript
浅谈在Vue-cli里基于axios封装复用请求
2017/11/06 Javascript
NodeJS 中Stream 的基本使用
2018/07/30 NodeJs
微信小程序实现时间预约功能
2018/11/27 Javascript
vue.js引入外部CSS样式和外部JS文件的方法
2019/01/06 Javascript
介绍Python中的文档测试模块
2015/04/28 Python
Django Highcharts制作图表
2016/08/27 Python
Python实现可自定义大小的截屏功能
2018/01/20 Python
Python cookbook(数据结构与算法)保存最后N个元素的方法
2018/02/13 Python
Python中实例化class的执行顺序示例详解
2018/10/14 Python
python石头剪刀布小游戏(三局两胜制)
2021/01/20 Python
使用PyQt4 设置TextEdit背景的方法
2019/06/14 Python
pytorch中的embedding词向量的使用方法
2019/08/18 Python
将matplotlib绘图嵌入pyqt的方法示例
2020/01/08 Python
matplotlib绘制多子图共享鼠标光标的方法示例
2021/01/08 Python
Bootstrap File Input文件上传组件
2020/12/01 HTML / CSS
银行柜员求职自荐书
2014/06/18 职场文书
2014年学生会工作总结
2014/11/07 职场文书
2016猴年开门红标语口号
2015/12/26 职场文书
Java9新特性之Module模块化编程示例演绎
2022/03/16 Java/Android