1

我应该以我对 javascript 几乎一无所知这一事实作为开头,除了像这种非常罕见的情况外,我并不打算过多地使用它。所以请原谅我没有尝试更多地了解它以尝试为自己解决这个问题。

情况:

我经常喜欢使用弹出式浏览器窗口。为此,我在浏览器中创建了一个书签,其中包含我从某处复制的一小段 Javascript——我不记得在哪里——并适应了我的屏幕:

javascript:%20var%20WindowPopup%20=%20window.open(window.location.href,'PopUp','left=1150,top=830,width=660,height=410,scrollbars=yes,location=no,status=no');

问题:

就目前情况而言,当存在现有弹出窗口并且我再次选择书签时,如果我在同一个站点,则会重新使用相同的弹出窗口,否则会创建一个新的弹出窗口。但是有很多时候我想覆盖这个默认行为。

三个问题:

  1. 如何强制弹出窗口始终在新窗口中打开?

  2. 如何强制弹出窗口始终重复使用现有窗口?

  3. 结合前两个选项:是否可以检测是否存在弹出窗口并提示我是否要重新使用它或打开一个新窗口?

对你的帮助表示感谢。

4

1 回答 1

1

小书签中的字符串“PopUp”是弹出窗口的名称。如果您使用相同的名称创建另一个弹出窗口,则将重复使用已打开的窗口。
如果您想避免这种行为,您必须每次都创建一个具有唯一名称的弹出窗口。

以下小书签代码将在弹出窗口的名称上附加一个时间戳,创建一个唯一的名称:

javascript:%20var%20WindowPopup%20=%20window.open(window.location.href,'PopUp'+Date.now(),'left=1150,top=830,width=660,height=410,scrollbars=yes,location=no,status=no'); 

除非您在一毫秒内打开多个弹出窗口,否则这应该可以工作。

于 2012-07-27T12:29:55.503 回答