为什么我不能使用JSDOM获得DIV的偏移量?

问题描述 投票:1回答:2

这就是我在做什么:

var mocha = require('mocha');
mocha.describe('div', function() {
  mocha.it('positions', function() {
    document.body.innerHTML = '<div style="left:55px;position:absolute;" id="d">x</div>'
    var div = document.getElementById('d');
    var rect = div.getBoundingClientRect();
    console.log('Left: ' + rect.left);
  }
}

我明白了:

Left: 0

应该是55岁,不是吗?我正在使用jsdom / 16.2.2,jsdom-global / 3.0.2,mocha / 6.1.4。

javascript mocha jsdom
2个回答
2
投票

jsdom没有实现布局引擎(https://github.com/jsdom/jsdom/issues/1322),因此它无法计算任何偏移量。


0
投票

根据getBoundingClientRect method的来源,它只是一个存根。换句话说,此方法不进行任何计算。

© www.soinside.com 2019 - 2024. All rights reserved.