将一个window.open置于屏幕中心(不是浏览器)

时间:2014-05-03 11:05:12

标签: jquery

如何在屏幕中打开一个窗口?我知道还有其他解决方案,但我认为它们将新窗口置于现有窗口的中心,而不是计算机的总屏幕。因此,这些解决方案仅在浏览器全屏时才有效。

我的例子有同样的问题,它只适用于第一个窗口是全屏的情况。是否有任何解决方案始终有效?

以下是播放的示例:http://jsfiddle.net/T7DJr/

(我试过screen.width但它不起作用。这是一个jQuery问题吗?)

HTML:

<a class="open" href="http://www.google.com" target="_blank"> open window </a>

jQuery的:

$(function(){    
    // this only centers in relation to the browser, not the screen:
    var top = $(window).height()/2 - 200;
    var left = $(window).width()/2 - 200;

    $('.open').click(function(e){
        e.preventDefault();
        window.open("","window1",
                    "toolbar=no, scrollbars=no, resizable=no, top="+top+", left="+left+", width=400, height=400");
    }); 
})

1 个答案:

答案 0 :(得分:2)

您可以使用

var top = window.screen.height/2 - 200;
var left = window.screen.width/2 - 200;

我不确定浏览器的兼容性。