0

下面是我在用户单击图像链接时显示弹出窗口的代码:

Javasript

  function plusbutton(mylink, windowname)
    {
    if (! window.focus)return true;
    var href;
    if (typeof(mylink) == 'string')
       href=mylink;
    else
       href=mylink.href;
    window.open(href, windowname, 'width=800,height=550,scrollbars=yes');
    return false;
}

HTML

<a href="previousquestions.php" onclick="return plusbutton(this, 'previousquestions');">
<image src="Images/plussign.jpg" width="30" height="30" alt="Look Up Previous Question" class="plusimage"/>
</a>

我的问题是,当用户打开窗口时,当用户点击离开窗口时,窗口会最小化。我不希望这种情况发生。如果用户点击离开窗口,那么它仍然应该显示窗口。

就像在Microsfot Word上单击“另存为”时,出现“另存为”窗口时,如果单击它,窗口仍然出现,说明您必须保存文档或取消另存为才能被能够对文档执行任何其他操作。我希望上面的弹出窗口也发生同样的情况,如何实现?

谢谢

4

2 回答 2

2

您正在尝试做的事情称为“模态窗口”,而使用浏览器窗口无法实现此目标。事实上,你甚至不能保证它是一个窗口:某些浏览器在某些情况下只会打开一个新标签页。

您应该做的是在您的应用程序中打开一个带有纯 HTML 的窗口。一些库允许您轻松地做到这一点:例如 jQuery UI 对话框。查看http://jqueryui.com/demos/dialog/#modal

如果您的所有架构都将您的弹出内容限制为通过单独的 URL 传递,您可以执行以下操作之一:

  • 在弹出窗口中放置和 iframe(简单但肮脏)
  • 或者使用 XMLHttpRequest 检索 HTML 内容并使用它来定义弹出窗口的内容。也许有点棘手,但更清洁。
于 2012-05-22T10:10:29.647 回答
0

您应该显示一个模态 div,它看起来像一个窗口,但是当您单击时它不会关闭

如果你可以使用像 jQuery 这样的 javascript 库,你可以这样做:

$('yourdivselector').dialog({modal : true});

将 modal 选项设置为 true

http://docs.jquery.com/UI/Dialog

于 2012-05-22T10:06:10.887 回答