根据客户端显示特定的iframe

时间:2017-11-01 15:49:21

标签: javascript

由于并非所有浏览器都支持MPEG DASH实时视频(safari),我正在寻找一种基于客户端显示3个iframe的方法。我认为在这种情况下需要客户端嗅探,因为我想要一个页面。

有没有办法根据客户端(或包含在div中的iframe)显示特定的iframe。

  • iframe 1 - 仅在safari上显示
  • iframe 2 - 仅在IE 7上显示
  • iframe 3 - 显示在所有其他人

===========

  • 1将输出HLS视频
  • 2将输出rtmp flash
  • 3将输出MPEG Dash

2 个答案:

答案 0 :(得分:1)

您可以使用一些javascript来检测浏览器,然后更改iframe' src'属性。一个图书馆是bowser:https://github.com/lancedikson/bowser

HTML:

<iframe id="iframe_id"></iframe>

的Javascript

const iframe = document.getElementById('iframe_id')
// do here your logic
if (bowser.msie && bowser.version == 7) {
  iframe.setAttribute('src', 'ie7url');
} elseif(bowser.safari) {
  iframe.setAttribute('src', 'safariurl');
} else {
  iframe.setAttribute('src', 'defaulturl');
}

答案 1 :(得分:0)

this问题之后,您可以检测到用户代理:

var is_chrome = navigator.userAgent.indexOf('Chrome') > -1;
var is_explorer = navigator.userAgent.indexOf('MSIE') > -1;
var is_firefox = navigator.userAgent.indexOf('Firefox') > -1;
var is_safari = navigator.userAgent.indexOf("Safari") > -1;
var is_opera = navigator.userAgent.toLowerCase().indexOf("op") > -1;