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

时间:2021-05-28

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;}

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

当鼠标移入以后如图:

下面是完整代码:

<!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>

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

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章