将用户转移到静态浏览器不支持页面

时间:2014-02-27 12:18:53

标签: javascript internet-explorer meteor compatibility

目前我正在尝试在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的实例

1 个答案:

答案 0 :(得分:1)

您可以直接使用第三方软件包来处理该问题。

我可以推荐https://atmosphere.meteor.com/package/redirect-ie-7-lowerhttps://atmosphere.meteor.com/package/browser-detection中的任何一个。还有一个设备检测包https://atmosphere.meteor.com/package/device-detection

话虽如此,浏览器/设备检测有很多问题。它们可能具有误导性甚至是欺骗性,并且围绕流星社区的普遍共识是,您应该采用更现代的方法,例如通过特征检测进行优雅降级或渐进式改进。

阅读此帖子https://groups.google.com/d/topic/meteor-talk/ku7kvNJp8ek/discussion以获取不同意见。