问题标签 [browser-feature-detection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
893 浏览

html - 功能检测内容处置的正确处理:附件?

存在一个已知问题,即 ios Safari 将忽略 Content-Disposition: attachment标头。当尝试从单页应用程序触发下载时,这是一个相当大的问题(我正在使用iframe hack,但如果有人有其他建议,请接受建议)。

我总是可以直接测试 ios:

但我宁愿不浏览器嗅探。有谁知道我如何能够检测内容处置是否正确处理?

0 投票
0 回答
107 浏览

javascript - CSS3 3d 支持的功能检测(Opera 问题)

我正在尝试为不支持 CSS3 3d 转换的浏览器应用不同的样式。但是由于某种原因,当我在 Opera 中预览页面时,它会应用 3D 浏览器的样式,即使它(据我所知)不支持 CSS3 3d 转换。

我知道脚本正在运行,因为当我在条件中切换类时,它可以在 chrome、safari 和 firefox 中运行。我只是不明白为什么 Opera 似乎在说它支持 3d 变换。我需要为歌剧做些什么特别的事情吗?

0 投票
1 回答
1587 浏览

javascript - 浏览器功能检测 - 是否支持 Silverlight?

我是反对设备检测的特征检测的热心倡导者。我希望能够检测浏览器(移动或其他)是否支持 Silverlight。

我有一个很好的谷歌,发现了这个Silverlight 支持的用户代理,但查看最后一条评论,它似乎不是最新的。

还有这个 SO question Is there a way to test if a browser support flash/silverlight?但它似乎没有回答这个问题。检测是否安装了 Silverlight 不同于检测对 Silverlight 的支持。

有没有人有这方面的经验,是否有可能?

0 投票
2 回答
2049 浏览

html - 检测浏览器对 HTML 媒体捕获的支持


如何检测浏览器对 HTML Media Capture* 的支持?


测试是否支持属性的传统方法似乎不适用于某些设备(在 iPad 和 Google Nexus 上测试):


Modernizr 有一个测试,但它似乎并不可靠(它使用相同的原理): https ://github.com/Modernizr/Modernizr/pull/909

__

(*) 有关 HTML 媒体捕获的更多信息:

http://www.w3.org/TR/html-media-capture/
http://www.html5rocks.com/en/tutorials/getusermedia/intro/#toc-round1

0 投票
1 回答
2526 浏览

javascript - 检查是否支持 Javascript 删除功能

在 Javascript 中,您可以delete使用对象属性:

现在o.x应该是undefinedwasDeletedtrue

但是,您只能删除本机对象,不幸的是,浏览器对此似乎有不同的想法:

现在在 Chrome 和 IE9-10x中将是undefined,但在 IE6-8 中这会引发异常:

“对象不支持此操作”

伟大的。请注意,这不是delete不受支持的......

我意识到我可以添加一个try {...} catch块,但是......

有没有办法在调用之前delete检查浏览器是否支持特定对象?

即我可以告诉浏览器是否将属性视为主机本机

0 投票
0 回答
207 浏览

javascript - 有没有办法检测浏览器是否会在滚动时冻结 DOM?

有没有办法检测浏览器在滚动时是否会冻结 DOM 或禁用 JavaScript?众所周知,一些移动浏览器会这样做,它有效地消除了基于滚动的效果,如视差和动画。我想在不诉诸UA嗅探的情况下有效地实现以下伪代码:

据我所知,Modernizr 没有检查它。

0 投票
0 回答
128 浏览

javascript - 使用 javascript 检查 *full* 文件系统访问权限

我希望使用 JS 进行一些功能检测,以确定是否在可通过台式机、平板电脑和手机访问的网页上显示典型的“输入类型 =“文件”元素。

理想情况下,我只想在对文件系统具有完全访问权限的设备/浏览器上显示输入。完整,意味着访问文件(如在台式计算机上),而不仅仅是手机的相机文件。

当我在我的 Android 手机上的网页上点击文件输入时,我会看到一个我可以上传的受限列表。在这种情况下,我需要功能检测返回 false,即不存在完全访问文件系统......我怀疑这是可能的。值得一提的是,用户代理嗅探是最后的手段,也是我希望避免的。

0 投票
1 回答
723 浏览

javascript - 如何使用 globalCompositeOperation 测试画布混合模式

因此,根据这篇文章,您可以使用以下方法对画布混合模式进行功能测试:

这会在 Chrome 27 中返回误报。

0 投票
2 回答
10374 浏览

javascript - 检测 iOS 是否正在使用 webapp

我想知道是否可以检测 iOS 用户是否正在使用 webapp,或者只是使用 safari 浏览器以正常方式访问。

我想要实现的原因是,在 iOS webapp 上,当用户单击链接时,他将被重定向到 Safari 浏览器。所以我使用以下解决方法让他留在 webapp 中(防止切换到 safari 浏览器)。

但我希望这种解决方法仅在用户使用 webapp 时发生,我希望它对 webapp 用户是有条件的。所以不在默认的 safari 浏览器上。

0 投票
1 回答
210 浏览

html - 寻找一个知道检测对特定音频视频格式文件支持的库

我正在构建一个移动网络应用程序,并且我正在实现视频和音频标签。显然,并非所有设备都知道可以运行所有文件格式。Modernizr 知道将编解码器返回给我,但我怎么知道我的文件是否有这个特定的编解码器?

我可以识别文件扩展名或 mim 类型,但我需要将编解码器与文件扩展名进行比较,并用这些数据维护一个数组,这似乎是一个孤注一掷的任务。

你们说什么?任何人都知道一个知道为我们提供这些信息的好图书馆吗?或者也许我的方法是错误的,并且有更好的方法来实现它。

请不要让 Firefox OS 例如向用户显示操作系统不支持特定文件格式的消息,但他在处理音频文件时不提供此消息。这意味着我需要向用户提供这种反馈,而且我也更喜欢以自定义的可视化方式对我的应用程序进行反馈。

一个例子: 我有video.mp4。Modernizr 返回 H264 的编解码器。这两条信息不相关。我无法为我的视频以所有可用的视频格式运行后备。该应用程序是云文件托管(如保管箱)的浏览器,如果用户上传了一个无法在 FirefoxOS 上运行的文件,那么他必须明白为什么它的文件无法运行,为此我需要这个库,而不是自己管理这种压缩。

一些参考资料:

谢谢你。