js控制div层

tiankai240 2012-03-12 08:59:01
有一个导航,希望在鼠标移动到每一个选项的时候能显示出子项目。
但由于不同显示器分辨率的原因,子项目显示的位置不能相对固定。
目前,只针对800*768的实现:
#Layer1{left:40px;}
#Layer2{left:100px;}
#Layer3{left:200px;}
#Layer4{left:300px;}
#Layer5{left:400px;}
#Layer6{left:auto;right:80px;}
#Layer7{left:auto;right:80px;}


jsp页面中:
<div id="Layer2" class="submenu" onMouseOver="MM_showHideLayers('Layer2','','show')" onMouseOut="MM_showHideLayers('Layer2','','hide')"> 
<div class="">
<ul>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li class="subright"></li>
</ul>
</div>
</div>



<div id="Layer3" class="submenu" onMouseOver="MM_showHideLayers('Layer3','','show')" onMouseOut="MM_showHideLayers('Layer3','','hide')">
<div class="">
<ul>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li class="subright"></li>
</ul>
</div>
</div>
<div id="Layer4" class="submenu" onMouseOver="MM_showHideLayers('Layer4','','show')" onMouseOut="MM_showHideLayers('Layer4','','hide')">
<div class="">
<ul>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li class="subright"></li>
</ul>
</div>
</div>
<div id="Layer5" class="submenu" onMouseOver="MM_showHideLayers('Layer5','','show')" onMouseOut="MM_showHideLayers('Layer5','','hide')">
<div class="">
<ul>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li class="subright"></li>
</ul>
</div>
</div>
<div id="Layer6" class="submenu" onMouseOver="MM_showHideLayers('Layer6','','show')" onMouseOut="MM_showHideLayers('Layer6','','hide')">
<div class="">
<ul>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li class="subright"></li>
</ul>
</div>
</div>
<div id="Layer7" class="submenu" onMouseOver="MM_showHideLayers('Layer7','','show')" onMouseOut="MM_showHideLayers('Layer7','','hide')">
<div class="">
<ul>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li class="subright"></li>
</ul>
</div>
</div>


希望在不同分辨率下div的相对位置能固定。
恳请各位帮忙!
...全文
106 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tiankai240 2012-03-12
  • 打赏
  • 举报
回复
通过js获得了距离左边框的值:
<script type="text/javascript">
var ml = document.getElementById("menutable");
alert(ml.offsetLeft);
</script>
如何能和css中已经设定的值:
#Layer1{left:40px;}
#Layer2{left:100px;}
#Layer3{left:200px;}
#Layer4{left:300px;}
#Layer5{left:400px;}
#Layer6{left:auto;right:80px;}
#Layer7{left:auto;right:80px;}
加起来,绑定到每个div上
<div id="Layer2" class="submenu" onMouseOver="MM_showHideLayers('Layer2','','show')" onMouseOut="MM_showHideLayers('Layer2','','hide')">
<div class="">
<ul>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li class="subright"></li>
</ul>
</div>
</div>

请求大侠帮忙!
tiankai240 2012-03-12
  • 打赏
  • 举报
回复
#Layer1{left:40px;}
#Layer2{left:100px;}
#Layer3{left:200px;}
#Layer4{left:300px;}
#Layer5{left:400px;}
#Layer6{left:auto;right:80px;}
#Layer7{left:auto;right:80px;}

写在css文件中
tiankai240 2012-03-12
  • 打赏
  • 举报
回复
现在是通过css给出固定位置参数值。
如果加入js,该如何复制。
导航时居中的,可以在js中通过导航table的id的offsetLeft获取距离左端的值吗?
试过了,不行。
老胡可以说的具体点吗?
谢谢
hch126163 2012-03-12
  • 打赏
  • 举报
回复
js 计算 坐标

常用的是下面4个属性
offsetTop offsetLeft offsetHeight offsetWidth

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧