限制Internet Explorer调整大小到特定限制

时间:2015-05-11 07:43:16

标签: jquery internet-explorer window-resize

我编写了这段代码并在Safari浏览器中正常工作.... 但在Internet Explorer中它适用于宽度...
但是如果只有高度从顶端朝向下方向调整大小,它就无法工作...... 我注意到,当调整大小时,窗口会粘在任务栏上(参见附图),这样可以在限制下调整窗口大小...
对此有任何解决方法?? ... 非常感谢帮助......

var MinimumWindowHeight = 600;
    var MinimumWindowWidth = 1024;
    var resizeTimeout;


    $(window).resize(function () {

    clearInterval(resizeTimeout);
        resizeTimeout = setTimeout(function () {
            try {
                if ($(window).height() < MinimumWindowHeight || $(window).width() < MinimumWindowWidth)
                    window.resizeTo(MinimumWindowWidth, MinimumWindowHeight + 168);
            } catch (e) { }
        }, 50);
    });

1 个答案:

答案 0 :(得分:1)

尝试将高度和宽度属性分开:

clearInterval(resizeTimeout);
        resizeTimeout = setTimeout(function () {
            try {
                if ($(window).height() < MinimumWindowHeight) {
                    window.resizeTo($(window).width(), MinimumWindowHeight + 168);
                }
                if ($(window).width() < MinimumWindowWidth) {
                    window.resizeTo(MinimumWindowWidth, $(window).height());
                }
            } catch (e) { }
        }, 50);
    });



编辑1:
记录实际发生的事情:

clearInterval(resizeTimeout);
        resizeTimeout = setTimeout(function () {
            try {
                if ($(window).height() < MinimumWindowHeight) {
                    console.log("last height: " + $(window).height());
                    console.log("new height: " + MinimumWindowHeight + "+ 168");
                    window.resizeTo($(window).width(), MinimumWindowHeight + 168);
                }
                if ($(window).width() < MinimumWindowWidth) {
                    console.log("last width: " + $(window).width());
                    console.log("new width: " + MinimumWindowWidth);
                    window.resizeTo(MinimumWindowWidth, $(window).height());
                }
            } catch (e) { 
                    console.log("an error occured !");
            }
        }, 50);
    });



编辑2:
我看到有关任务栏问题的帖子:https://stackoverflow.com/a/60209/4786273 看起来你不能,你必须在调整大小之前移动窗口以避免这种情况...你可以计算位置而不是(0,0)位置。
为此,您可以阅读https://stackoverflow.com/a/3437825/4786273screen.height - (MinimumWindowHeight + 168)作为窗口的顶部位置。