我需要将 Element.getBoundingClientRect()
返回的 DOMRect 对象的结果转换为 JSON 值
举个例子:
http://jsfiddle.net/5vs6x6fc/2/
当使用 JSON.stringify()
时,它返回 {}
,我需要的是 JSON 值。
我想知道:
- 这是为什么?
- 除了循环到返回对象
r
的属性之外,还有什么可能的解决方案,例如:for (var property in r){}
注意:我的目标是 Chrome。
最佳答案
边界矩形仅包含“虚拟”属性。如果你
console.log(Object.getOwnPropertyNames(r));
// or
console.log(Object.keys(r));
您将得到一个空列表。 JSON.stringify()
依赖于 Object.keys(r)
(请参阅下面的评论),因此返回一个空对象文字。
您的基于循环的方法似乎是解决此问题的可行方法。
关于javascript - 无法将 Element.getBoundingClientRect() 的结果转换为 JSON 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30911050/