中心的弹出窗口突然无法在Chrome中运行

时间:2012-04-01 01:51:29

标签: javascript google-chrome

我有一个我刚刚建立的网站。突然之间,没有改变任何代码,居中的弹出窗口现在已经失去了它的大小,它的中心对齐并且位于左上角约50 x 50像素!

有人知道造成这种情况的原因吗?谷歌浏览器是否改变了影响我脚本的内容?它仍然可以在所有其他浏览器中使用,并且过去常常在Chrome中使用。

我的来电者:

onclick="wOpen('https://mydomain.com/mypage.html', 'preview', 800, 500); return false;"

我的功能

function wOpen(url, name, w, h) {
  w += 32;
  h += 96;
  wleft = (screen.width - w) / 2;
  wtop = (screen.height - h) / 2;

  if (wleft < 0) {
    w = screen.width;
    wleft = 0;
  }
  if (wtop < 0) {
    h = screen.height;
    wtop = 0;
  }

  var win = window.open(url,
  name,
  'width=' + w + ', height=' + h + ', ' +
  'left=' + wleft + ', top=' + wtop + ', ' +
  'location=no, menubar=no, ' +
  'status=no, toolbar=no, scrollbars=yes, resizable=no');
  win.resizeTo(w, h);
  win.moveTo(wleft, wtop);
  win.focus();
}

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

chrome中的resizeTo()和moveTo()似乎有问题。

通常chrome应该忽略这些方法,但现在它们被执行并且窗口移动到一个未知的位置并获得未知的大小。

我根本看不到窗口,但在任务栏中我看到它必须在某个地方,我也能够最大化它。

<强>建议: 制定条件以防止在chrome中执行行。

更好的建议: 根本不要使用这些方法。

另见:The javascript "resizeTo" function not working in Chrome and Opera

答案 1 :(得分:1)