javascript - 无法将 Element.getBoundingClientRect() 的结果转换为 JSON 值

标签 javascript

我需要将 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/

相关文章:

javascript - 圆点刻度

javascript - carousell 每个 div 都做一些其他的事情 onclick

javascript - 按名称读取 javascript cookie

javascript - trigger.io:自动完成文本框不起作用

javascript - 如何过滤仅包含数字的简单多维数组

javascript - Grunt 连接代理重写在 https 中不起作用

javascript - 将 PHP 与 JavaScript 结合使用时出现意外的 token 错误

javascript - 检测 jquery mobile 上的更改页面

javascript - 通过 Node.js 连接到 OpenVPN 服务器

JavaScript 源路径