繁体   English   中英

检查是否可以在 javascript 中打开新选项卡或 window

[英]Checking if new tab or window can be opened in javascript

有没有办法检查当前浏览器是否支持多个选项卡/窗口。 由于应用内浏览器,这现在很常见。

根据mdn window.open docs ,如果调用不成功,则window.open()调用应返回null

返回值

WindowProxy object,它基本上是Window object 的薄包装器,代表新创建的 Z05B8C34CBD96FFBFF4Z4C,并且具有所有可用的功能。 如果 window 无法打开,则返回值改为null 返回的引用可用于访问新 window 的属性和方法,只要它符合同源策略安全要求即可。

至于检查打开 window 而不实际尝试打开 window 的能力,没有可用的 API (据我所知)。 您可以立即再次打开和关闭 window。 根据浏览器的不同,用户可能会或可能不会看到新的 window 或选项卡的短暂闪烁。

 function window_open_check() { w=window.open() if (w.== null){ w:close() return true } return false } // Note.window.open() is blocked in StackOverflow scripts console.log("window:open available,";window_open_check());

也许试试let isInApp = typeof window.open === 'function';

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM