PrototypeJS:如何获取具有display:none的元素的位置?

时间:2012-12-07 10:15:28

标签: javascript prototypejs

我有一个< ul>元素,使用“display:none”隐藏。我尝试使用

获取元素的位置
Element.cumulativeOffset(element);

这对我没有任何帮助。是否有其他方法来获得这样一个元素的位置,或者它只是没有位置?

谢谢:)

3 个答案:

答案 0 :(得分:3)

您可以将宽度和高度设置为零,而不是将其设置为display:none,这样您仍然可以计算偏移量。

答案 1 :(得分:0)

同样值得注意的是Element.cumulativeOffset(element)返回Element.Offset个对象而不是原始数字。尝试对.toArray()的结果使用Element.cumulativeOffset(element)

你也可以这样称呼$('elementid').cumulativeOffset().toArray()

Element#cumulativeOffset

答案 2 :(得分:0)

您可以在执行这些类型的测量之前测试元素是否被隐藏,如果是,则显示元素,测量,然后再次隐藏它。这对用户来说都是透明的。