禁用浏览器窗口调整大小

Mat*_*ger 11 javascript browser jquery window-resize

对于初学者......我没有任何恶意的意图让用户接受弹出窗口或类似的东西.我只是想阻止用户调整他们已经导航过的网页的浏览器窗口(意味着我无权访问/不想使用window.open();).我已经研究了很长一段时间,但似乎找不到直截了当的答案.

我觉得我正在走上正轨:

 $(window).resize(function() {
     var wWidth = window.width,
     wHeight = window.height;
     window.resizeBy(wWidth, wHeight);
 });
Run Code Online (Sandbox Code Playgroud)

......无济于事 我不得不想象这是可能的.是吗?如果是这样,我一定会感谢你的帮助.

谢谢

Der*_*會功夫 24

您可以先确定一个确定的大小.

var size = [window.width,window.height];  //public variable
Run Code Online (Sandbox Code Playgroud)

然后这样做:

$(window).resize(function(){
    window.resizeTo(size[0],size[1]);
});
Run Code Online (Sandbox Code Playgroud)

演示:http://jsfiddle.net/DerekL/xeway917/


问:这不会导致无限循环的大小调整吗? - user1147171

好问题.这不会导致无限循环的大小调整.在W3C规范规定,resize只有当一个文档视图已调整大小事件必须被分派.当resizeTo函数尝试第二次执行时,窗口将具有与刚刚设置的完全相同的维度,因此浏览器不会触发resize事件,因为维度尚未更改.