首页 > 解决方案 > 如何检测 iframe 是否接受创建的 blob url 作为 iframe 的 src

问题描述

当涉及到支持相对更广泛的网络浏览器时,我们有时需要某种防御性编码来检查特定浏览器/版本(例如 IE11)是否支持某些功能。

建议使用特征检测代替浏览器嗅探。例如,您想使用更新的 Web api,例如 Shape Detection API。首先,您检查 API 是否在浏览器中实现,而不是检查您正在运行您的应用程序的浏览器,因为浏览器将来可以添加/删除对特定 API 功能的支持。

if ('BarcodeDetector' in window) {
   // do related stuff here
}

但是如何检测更多的构造函数或属性等。我的具体情况要求如下:

我需要检查我的 iframe 是否接受创建的 Blob url 作为srciframes 中的属性值。根据caniuse,IE 不会那样做。

如何检测该功能?

注意:作为后备解决方案,我认为能够在这种情况下引发错误也是可以接受的。也许所描述的这个案例可以被认为是一类浏览器特征检测案例的示例,并且答案中的解决方案可以应用于该类的其他案例。

标签: javascriptbrowser-feature-detection

解决方案


推荐阅读