我说答案很简单,但我发誓我浪费了几个小时。
我正在尝试使用常规ol'javascript更改div元素的位置。首先,我需要元素的初始top和left属性值作为整数。我正在尝试使用parseInt(element.style.top,10)
我遇到的问题是初始(默认)element.style.top和left值总是返回NaN。如果我在尝试解析值之前指定了top和left值,那么它可以正常工作......我希望能够处理尚未指定值的情况......
请帮忙
答案 0 :(得分:3)
该值可能是“NaN”,因为CSS属性值为“auto”。这在IE中发生了很多。
答案 1 :(得分:1)
element.offsetTop
或element.offsetLeft
返回整数(不需要解析),你试过吗? element.style.top
可以包含许多内容,例如auto
,3em
,20%
。如果auto
parseInt
返回NaN,则在其他情况下,它可能会返回一个数字,但不会返回您需要的数字。
答案 2 :(得分:0)
您正在查询样式属性(由例如CSS设置)。但是,您需要元素的实际位置。看看here如何使用Javascript进行操作。