Div浮现的位置错乱

我想让Div根据传入的top和left值出现在一定的位置,div采用的是绝对定位。粗略效果如下:
页面截图


详细情况说明:在用户点击设备ID编号后,在当前行的下方出现Div浮动层,在浮动的Div中展示设备绑定的用户列表信息。现在出现的问题是,如果直接点击各个ID编号链接,Div能出现在正常的位置,但是当我滑动右边的滚动条来移动页面后再点击时,就会出现Div的位置错乱。

阅读 3.1k
2 个回答

好吧,虽然不知道题主绝对定位元素的父元素是那个,但是有一种可以直接用 css 解决的方案。

假设每一条设备数据是由 li 做为父元素,在它里面有一个隐藏的 div 元素,div 中有用户的列表信息。设置 li 元素相对定位,div根据父元素 li 绝对定位。 top 和 left 的值就根据需要来设置。因为是根据父元素 li 来定位的, 所以不管滚动条如何滚,div 元素都不会错位。最后用 js 来控制 div 的显示和隐藏就可以了, 完全不需要传入 top 和 left 值来定位。可以通过 css 来解决的问题,最好就不需要使用 js。

我猜 滑动滚动条之后div.style.top没加上scrollTop吧

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题