目前我正在尝试在Meteor app中构建一个页面,让用户知道他们的浏览器不受支持。
问题是我的Meteor应用程序似乎根本没有加载IE6-9。我只是得到一个空白页面。
我想要的是,在它全部开始之前,如果我可以将它们引导到一个静态网站,告诉他们他们的浏览器不可用。
这就是我所拥有的,它似乎没有起作用
layout.html页面
<template name="layout">
{{#if isOldBrowser }}
{{> upgradeBrowser}}
{{else}}
<div class="{{iif currentUser 'padded' 'padded-top'}}">
{{#unless getConfigSetting 'showLandingPageOnly' false}}
{{> layoutNavbar }}
{{> layoutConnectionStatus }}
{{/unless}}
{{> loginDialog }}
{{> feedbackDialog }}
{{> teamNameDialog }}
{{> teamTimeDialog }}
{{> teamAddParticipantDialog }}
{{> teamEditParticipantDialog }}
{{yield}}
</div>
{{/if}}
我的全球车把
Handlebars.registerHelper 'isOldBrowser', () ->
BrowserDetect.browser == 'Explorer' && BrowserDetect.version < 10
我的upgradeBrowser模板
<template name="upgradeBrowser">
<h1>Sorry mate! Your browser is a bit ancient! Try upgrading to <a href="www.google.com/chrome">Chrome</a></h1>
</template>
PS - 我也可能只提到我只使用IE11内置的开发人员工具中的文档模式设置。它可能会发生它可能会工作,但我真的没有任何方法来测试它,因为我没有旧版IE的实例
答案 0 :(得分:1)
您可以直接使用第三方软件包来处理该问题。
我可以推荐https://atmosphere.meteor.com/package/redirect-ie-7-lower或https://atmosphere.meteor.com/package/browser-detection中的任何一个。还有一个设备检测包https://atmosphere.meteor.com/package/device-detection
话虽如此,浏览器/设备检测有很多问题。它们可能具有误导性甚至是欺骗性,并且围绕流星社区的普遍共识是,您应该采用更现代的方法,例如通过特征检测进行优雅降级或渐进式改进。
阅读此帖子https://groups.google.com/d/topic/meteor-talk/ku7kvNJp8ek/discussion以获取不同意见。