在多显示器系统上使用javascript window.open()时,如何控制弹出窗口打开的显示空间?在我看来,这似乎是失控的,而且它的行为也是随机的。
解决方案
“ window.open双屏”搜索结果显示了这个花哨的金块:
“当用户单击以使用时
window.open在打开到新窗口的链接时。使窗口显示在与'
相同的窗口监视器上
父母。 “
//查找左边界屏幕/监视器
函数FindLeftScreenBoundry()
{
//检查窗口是否在正轴上偏离主监视器
// X,YX,YS =屏幕,W = Window
// 0,0 ---------- 1280,0 ----------
// | | | --- |
// | | | | W | |
// | S | | --- S |
// ---------- ----------
if(window.leftWindowBoundry()> window.screen.width)
{
return window.leftWindowBoundry() - (window.leftWindowBoundry() - window.screen.width);
}
//检查窗口是否在负轴的主监视器上
// X,YX,YS =屏幕,W =窗口
/ / 0,0 ---------- -1280,0 ----------
// | | | --- |
// | | | | W | |
// | S | | --- S |
// ---------- ----------
//由于Internet Explorer中的错误打开了新窗口,这仅适用于Firefox到负轴
//然而,您可以将打开的窗口移动到负轴作为解决方法
if(window.leftWindowBoundry()< 0&& window.leftWindowBoundry()>( window.screen.width * -1))
{
return(window.screen.width * -1);
}
//如果以上都不是,监视器位于主监视器上,其屏幕X应为0
返回0;
}
window.leftScreenBoundry = FindLeftScreenBoundry;
现在编写代码,现在您可以使用window.open在由父窗口打开的监视器上打开
窗口。
如果成功地使您可以在启动文档的同一屏幕上打开一个弹出窗口,那么类似的努力应该能够将其修改为不同的行为。
请注意,正如代码长度所暗示的那样,没有内置函数jquery / javascript /浏览器来理解多个监视器,但是双屏桌面只是一个放大的单个笛卡尔平面,而不是两个不连续的平面。
更新
此链接已死。使用
本文的地址:在多监视器/双监视器系统上的IT之家»window.open()-窗口的弹出位置在哪里?
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-364216-1.html
爱你