如何使用浏览器特征检测来控制视频属性静音?
How to use browser feature detection to control video attribute muted?
我是网络开发新手。经过研究,我发现使用用户代理样式对于网站的长期运行来说是不可靠的。我以前从未使用过特征检测,但被告知这是可行的方法。那么我可以获得一些入门帮助吗?我只想检测用户的浏览器是否是 safari,如果是,我希望特定的视频元素包含 'muted' 属性。从本质上讲,我希望视频在 chrome 中自动播放有声,而在 safari 中我希望它静音并自动播放。假设视频元素有 id #catwalk。如果数量很多,有人可以指点我针对我的特定用例使用特征检测的简单指南吗?谢谢!
由于 Safari 是唯一具有正确尾调用的(当前)浏览器,因此以下代码应识别 safari 浏览器(因为我没有任何基于水果的设备,所以我无法检查此代码的准确性)
var safari = (function() {
try {
return eval(`(function(){"use strict";return(function f(n){if(n<=0){return "foo";}return f(n - 1);}(1e6))==="foo";})()`);
} catch(e) {
return false;
}
})();
当然,特征检测的问题是特征被添加到浏览器中——所以这可能并不总是有用
我是网络开发新手。经过研究,我发现使用用户代理样式对于网站的长期运行来说是不可靠的。我以前从未使用过特征检测,但被告知这是可行的方法。那么我可以获得一些入门帮助吗?我只想检测用户的浏览器是否是 safari,如果是,我希望特定的视频元素包含 'muted' 属性。从本质上讲,我希望视频在 chrome 中自动播放有声,而在 safari 中我希望它静音并自动播放。假设视频元素有 id #catwalk。如果数量很多,有人可以指点我针对我的特定用例使用特征检测的简单指南吗?谢谢!
由于 Safari 是唯一具有正确尾调用的(当前)浏览器,因此以下代码应识别 safari 浏览器(因为我没有任何基于水果的设备,所以我无法检查此代码的准确性)
var safari = (function() {
try {
return eval(`(function(){"use strict";return(function f(n){if(n<=0){return "foo";}return f(n - 1);}(1e6))==="foo";})()`);
} catch(e) {
return false;
}
})();
当然,特征检测的问题是特征被添加到浏览器中——所以这可能并不总是有用