我需要一个 JavaScript 解决方案来针对给定的 URL 仅启动一个窗口,其中包含一个 Java Applet。我在 Stack Overflow 上找到了一个解决方案 - 这里:JavaScript window.open only if the window does not already exist
但它似乎不起作用..我明白了 错误:launchApplication.winrefs 未定义 线路:29
我似乎无法将代码发布在这个小框中并使其看起来就在下面, 所以代码(我的工作代码,加上上面的解决方案) 在这里:http://pastie.org/833879
哪里出错了?
据我了解,如果调用窗口关闭,则哈希或数组或我用来存储对以这种方式打开的窗口的调用引用的任何内容都将丢失。
即使调用窗口关闭并重新打开,是否有办法使其工作?基本上询问浏览器:“您是否打开了包含以下 URL 的窗口?”如果是这样,“那个窗口的引用是什么?” (这样我就可以提出它)。
最佳答案
第一个问题[已解决]
我发现您在一个地方使用了 winRefs
,后来又使用了 winrefs
。可能只是您需要将第二个字母中的 R 大写。看来您的代码中出现了几次小写版本,甚至在第 29 行之后也是如此。请务必在再次测试之前更新所有这些版本。
第二个问题
我刚刚注意到这一行:
if ( typeof launchApplication.winRefs == undefined )
如果 .winRefs
不存在,则不会返回 true
。当然,如果未找到该属性,我们希望它返回 true,因此我们必须将 undefined
括在引号中,以使其按我们想要的方式工作:
if ( typeof launchApplication.winRefs == "undefined" )
关于javascript 为具有给定 URL 的 Java 小程序仅启动一个窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2301070/