来自package.json
的代码:
{
"main": "main.html",
"name": "Test App",
"window": {
"toolbar": true,
"width": 400,
"height": 500,
"position": "mouse",
"resizable": true
}
}
在main.html
我有 javascript代码打开新窗口:
window.open("http://www.example.com","mywindow", "location=1,status=1,scrollbars=1,width=100,height=100");
但窗口的高度和宽度不在width=100
和height=100
。
我还在main.html中尝试了window.resize(100,100)
,但它没有用。
有什么方法可以覆盖新窗口的height
和width
吗?
答案 0 :(得分:0)
使用window.open()
打开的Windows使用清单文件(package.json)中的窗口设置。
如果使用nw.js Window对象创建窗口而不是DOM对象,则可以以清单格式传递窗口设置以覆盖默认值。
var gui = require("nw.gui")
gui.Window.open('http://www.example.com', {
width: 100,
height: 100,
});
或者,如果您必须使用DOM window.open
并且需要控制默认值,则需要处理" new-win-policy"事件并使用setNewWindowManifest
提供窗口设置:
// set up handler for new-win-policy event
var gui = require('nw.gui');
var win = gui.Window.get();
win.on('new-win-policy', function (frame, url, policy) {
policy.setNewWindowManifest({
width: 600,
height: 300
});
});
// open window using DOM object, uses arguments set in event handler
window.open('http://www.example.com', '_blank', '');
此处提供了更多文档:https://github.com/nwjs/nw.js/wiki/Window#new-win-policy