【问题标题】:pop up window opens fullscreen in firefox though sizes are given尽管给出了尺寸,但弹出窗口在 Firefox 中打开全屏
【发布时间】:2012-08-21 19:17:09
【问题描述】:

我正在打开一个弹出窗口,它在 Internet Explorer 和 mozilla firefox 中打开。但是 Firefox 会忽略给定的大小,因此会创建一个全屏弹出窗口。

以下代码:

<a href="agb.html" target="_blank" onclick="return popup(this.href);">linkname</a>

以下功能:

<script type="text/javascript">
function popup (url) {
fenster = window.open(url, "Popup", "width=640,height=700,resizable=yes,scrollbars=yes");
fenster.focus();
return false;
}
</script>

【问题讨论】:

  • 我的想法很愚蠢,但是您是否检查过您的 Firefox 设置以检查您是否禁用了“移动或调整现有窗口的大小”?
  • 不,我没有,我只是检查了“阻止弹出窗口”功能。在哪里可以找到这个特定的选项?无论如何,解决方案是参数“top”和“left”,它们可以工作,没有窗口显示全屏

标签: javascript firefox popup size


【解决方案1】:

我在提交到弹出窗口时遇到了类似的问题。 我有

<form name ="printView" method ="post" action="printOnly.php" target="popUp"
             onsubmit="popup(this);" style="display:inline!important;"> 

(样式是让表单和另一个表单在同一行)

并且弹出功能是

function popup(form) {
    window.open('','formpopup', 'view text',
                'height=700,width=640,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=no,menubar=no,location=no,directories=no,status=yes'
    );
    form.target = 'formpopup';
    view.focus(this);
}   

如您所见,我已经尝试了顶部和左侧选项,但我的弹出窗口仍然以与主窗口相同的大小打开,并且滚动条、工具栏、菜单栏、目录和位置设置被忽略,我只得到位置无论我将它们的值设置为什么,都可以。 PS。我检查了 Firefox 弹出首选项,它们都是允许的。

【讨论】:

  • 我认为“view.focus(this)”是不正确的,因为您将表单本身作为对象,但您希望弹出窗口被聚焦还是?
  • 你的 url 参数是空的...故意的?
  • 你说得对,我希望流行音乐集中。 URL参数为空,因为该函数用于加载不同形式的不同url。
【解决方案2】:

这是我在 Firefox 中工作时所知道的开发网站上的内容(实际上, 测试过它的唯一内容。 我对 js 不太了解,所以我确定我是从网上某个地方得到的 - 所以希望它遵循正确的做法,而不是什么。

// js:
<script type="text/javascript">
// Popup window code
function newPopup(url) {
    popupWindow = window.open(
url,'popUpWindow','height=390,width=350,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=no,menubar=no,location=no,directories=no,status=yes')
}

</script>

// link: edit: an onclick event should be used instead, but I'm leaving my original code.
<a href="Javascript:newPopup('/url/');">Link text</a>

【讨论】:

  • 这行得通,但我仍然不明白为什么。对我来说,它看起来完全一样...我将进一步调查... ;-) 可能必须设置其中一个参数...
  • 根本不一样-.-他在href标签中写了javascript的东西并且没有使用onclick事件..所以没有javascript的用户将无法点击该链接..跨度>
  • 好点Walialu。我在不久前做的一个项目中有这个,现在你提出来我意识到我现在使用 onclicks(检查它是否在 IE 中工作!)。另外,我为内部项目工作,所以我只知道它是否适用于我们使用的软件,例如,我知道我们所有的计算机都使用 cookie、js、firefox 或 chrome 等。很高兴听到影响有限用户的案例访问或诸如此类。
  • 我只复制了他的 window.open 函数的参数并保留了我的 onclick 变体。解决方案是参数“top”和“left”,它们可以工作,没有窗口显示全屏。有点可以理解,但 Internet Explorer 就可以了。
【解决方案3】:

您需要将弹出窗口的显示属性设置为 display: block;display: inline-block 才能使您的宽度和高度尺寸生效。

【讨论】:

  • 但是我的弹窗是一个窗口,css的窗口对象是否存在?
  • 没问题。我假设自从您浏览该页面以来您看到了 resizeTo() 函数。只是出于好奇,这能解决您的问题吗?
  • 不,我没有尝试,但解决方案是参数“top”和“left”,使用它们可以工作,没有窗口显示全屏
【解决方案4】:
<a href="agb.html" target="_blank" onclick="popup(this.href);return false;">linkname</a>

会做你想做的;)

【讨论】:

  • 确实与我的符号具有完全相同的效果 :-/ 但我发现解决方案是参数“top”和“left”,使用它们可以工作,没有窗口显示全屏
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-12-02
  • 1970-01-01
  • 1970-01-01
  • 2021-08-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多