浏览器检测 & Firefox data-src 属性
Posted
技术标签:
【中文标题】浏览器检测 & Firefox data-src 属性【英文标题】:Browser detection & Firefox data-src attribute 【发布时间】:2016-07-08 12:51:14 【问题描述】:我希望在我的页面上嵌入浏览器检测,以便如果浏览器是 Firefox,我会启动不同的 iframe(区别在于 data-src 与 src),如此处所示。有人可以帮我在脚本部分进行哪些更改以使其正常工作吗?
<script>
// Firefox 1.0+
var isFirefox = typeof InstallTrigger !== 'undefined';
isFF = '<iframe frameborder="0" scrolling="0" scrolling="no" horizontalscrolling="no" verticalscrolling="no" **src**="../test.html"></iframe>';
notFF = '<iframe frameborder="0" scrolling="0" scrolling="no" horizontalscrolling="no" verticalscrolling="no" **data-src**="../test.html"></iframe>';
if(isFirefox = 'true')
window.load(isFF);
else
window.load(notFF);
</script>
【问题讨论】:
你如何定义“火狐”?你们包括基于 Palemoon、Thunderbird 和 Gecko 的浏览器吗?如果我下载源代码,修改一点代码并自己编译呢? 永远不要进行浏览器嗅探。改用特征检测。 【参考方案1】:我最终使用 Jquery 供其他人参考:
<script>
// Firefox 1.0+
if (isFirefox = typeof InstallTrigger !== 'undefined')
$(function()
$("#browser-iframe iframe").replaceWith(function()
return $('<iframe class="auto-resize" frameborder="0" scrolling="0" scrolling="no" horizontalscrolling="no" verticalscrolling="no" src="../youtubevideo.html"></iframe>');
);
);
</script>
使用replaceWith,我替换了我想要的代码。
【讨论】:
检查InstallTrigger
似乎很不可靠。 navigator.userAgent
似乎是一个更好的主意。以上是关于浏览器检测 & Firefox data-src 属性的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法在过滤掉 iOS Chrome、Firefox 和其他浏览器的同时检测 iOS Safari?
Firefox 中的 Vue devtools 未检测到 Vue 3 应用程序