js 分享到侧边栏

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 分享到侧边栏相关的知识,希望对你有一定的参考价值。

<!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 charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title> 分享到侧边栏</title>
<style type="text/css">
*{
margin:0;
padding:0;
}
.box{
width: 800px;
margin:100px auto;
background: #ccc;
height: 800px;

}
#div1{
width: 150px;
height: 200px;
background: green;
position: absolute;
left:-150px;
top: 50px;
}
#div1 span{
position: absolute;
width: 20px;
height: 60px;
line-height: 20px;
background: blue;
right:-20px;
top:70px;
}
</style>
</head>
<body style="position: relative;">
<div class="box">

<div id="div1">
<span>分享到</span>
</div>
</div>
</body>
<!-- <script type="text/javascript" src="js/jquery-1.12.2.min.js"></script> -->
<script type="text/javascript">
window.onload=function()
{
var oDiv=document.getElementById("div1");

var timer=null;
//简化过程1
/*oDiv.onmouseover=function()
{
startMove();
};
oDiv.onmouseout=function()
{
startMove2();
};*/
//简化过程2
/*oDiv.onmouseover=function()
{
startMove(10,0);
};
oDiv.onmouseout=function()
{
startMove(-10,-150);
};*/

//简化过程3
oDiv.onmouseover=function()
{
startMove(0);
};
oDiv.onmouseout=function()
{
startMove(-150);
};



//简化过程1 把不同的地方用参数传进来
/*function startMove()
{
//var oDiv=document.getElementById("div1");
clearInterval(timer);
timer=setInterval(function()
{
if(oDiv.offsetLeft==0){
clearInterval(timer);
}else{
oDiv.style.left=oDiv.offsetLeft+10+‘px‘;
}
},30);
};

function startMove2()
{
//var oDiv=document.getElementById("div1");
clearInterval(timer);
timer=setInterval(function()
{
if(oDiv.offsetLeft==-150){
clearInterval(timer);
}else{
oDiv.style.left=oDiv.offsetLeft-10+‘px‘;
}
},30);
};*/
//简化过程2
/*function startMove( speed,iTarget)
{
var oDiv=document.getElementById("div1");
clearInterval(timer);
timer=setInterval(function()
{
if(oDiv.offsetLeft==iTarget){
clearInterval(timer);
}else{
oDiv.style.left=oDiv.offsetLeft+speed+‘px‘;
}
},30);
};
*/
//简化过程3 根据目标点判断速度的正负
function startMove(iTarget)
{
var oDiv=document.getElementById("div1");
clearInterval(timer);

timer=setInterval(function()
{
var speed=0;
if(oDiv.offsetLeft>iTarget){
speed=-10;
}else{
speed=10;
}
if(oDiv.offsetLeft==iTarget){
clearInterval(timer);
}else{
oDiv.style.left=oDiv.offsetLeft+speed+‘px‘;
}
},30);
};
};

</script>
</html>












































































































































以上是关于js 分享到侧边栏的主要内容,如果未能解决你的问题,请参考以下文章

jquery实现分享到侧边栏原理

Vue.js - 使用 vuex 打开/关闭动态侧边栏思想不同的组件(导航栏到侧边栏)

平常项目中用到的分享到侧边栏

js仿淘宝侧边栏(学习笔记)

平常项目中用到的分享到侧边栏

新手求救 js控制侧边栏的关闭和打开