resizeTo
및 resizeBy
방법이 구현되지 않고 아무것도 할 얻을 방법을 알아낼 수 없습니다. 당신은 jsdom의 코드베이스를 검색하여 해당을 볼 수
$ grep -P 'resize(To|By)' `find . -type f`
./lib/jsdom/browser/index.js: resizeBy: NOT_IMPLEMENTED(null, 'window.resizeBy'),
./lib/jsdom/browser/index.js: resizeTo: NOT_IMPLEMENTED(null, 'window.resizeTo'),
한 번만 초기화시 모든 창 크기를 설정하려는 경우, 당신은 당신이 원하는대로 할 수있는 innerWidth
값을 설정할 수 있습니다. 실제 브라우저에서는 이것이 올바른 방법은 아니지만 실제로 작동합니다.
var jsdom = require("jsdom");
var document = jsdom.env({
html: "<html></html>",
done: function (error, w) {
console.log(w.innerWidth, w.innerHeight);
w.constructor.prototype.resizeTo = function (width, height) {
this.innerWidth = this.outerWidth = width;
this.innerHeight = this.outerHeight = height;
};
w.resizeTo(100, 200);
console.log(w.innerWidth, w.innerHeight);
}
});
이 표시됩니다 : 위의
1024 768
100 200
코드는 resizeTo
이 존재에 따라 코드가있는 경우
그러나, 당신은 창문을 구축 생성자에 자신의 polyfill을 추가 할 수 있습니다 설명을위한 것입니다. resizeTo
에 대한 polyfill 작성의 모든 내용에 대해 생각하지 않았습니다. resizeBy
도 비슷하게 처리되지만 델타를 창 크기에 추가합니다.
귀하의 마지막 문장은 당신이 그것을 할 시도했지만 작동하지 않았다 의미한다. 너 무슨 짓을 한거야? – Louis
여러 가지. tstWindow.resizeTo (#) tstWindow.resizeBy (#) "width"속성을 설정하고 innerWidth 특성을 설정하고 다른 것들을 기억하지 못했습니다. –
나는 API 변경 때문에 부분적으로 어려움을 겪고 있다고 생각하지만 jsDom을 완벽하게 파악하지 못하는 것 같습니다. (내 다른 질문에 대한 귀하의 도움을 주셔서 감사합니다, 루이, 이것은 동일한 일을 계속) –