首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >boilerplatejs可以和IE8一起工作吗?

boilerplatejs可以和IE8一起工作吗?
EN

Stack Overflow用户
提问于 2013-02-02 00:32:24
回答 3查看 153关注 0票数 1

我想在即将到来的intranet项目中使用boilerplatejs,然而,许多机器仍然是带有IE8的WinXP (并且在组织中没有大规模部署火狐或Chrome的选项)。

我很快就尝试了整合html5shiv,但这似乎没有什么帮助。路由或其他功能似乎不起作用。我正在尝试弄清楚这是否值得这样做,或者是否有人试图在花费更多时间之前让它工作。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-02-02 12:22:46

BoilerplateJS核心没有设计任何HTML5功能。虽然我还没有在IE8中测试它,但我相信通过一些调整,这是非常有可能的。例如,如果用于路由的库crossroadsJS与IE8不兼容,您仍然可以很容易地将其替换为pathJS或其他与IE8兼容的库。

票数 0
EN

Stack Overflow用户

发布于 2013-02-02 04:08:10

不怎么有意思。这就是h5bp中的代码所涉及的内容

代码语言:javascript
复制
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->

这些都是用于优雅降级ie < 9的条件子句。

如果这是一个许多人都在使用ie<9的项目,那么从工程角度考虑使用xhtml...just可能会更好

票数 2
EN

Stack Overflow用户

发布于 2013-02-14 17:48:15

事实上,您将遇到的最困难的问题不是boilerplatejs,而是外部库。

具体的调整取决于您在应用程序中利用的功能,但首先您需要做的就是

  • 添加html5shim以支持HTML5元素,如用于缺少json序列化的<section>
  • include json2库包括以启用flot图表

将此代码放入您的<head>部分:

代码语言:javascript
复制
<!--[if lt IE 9]>
<script type="text/javascript" charset="utf-8" src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<script type="text/javascript" charset="utf-8" src="http://cdnjs.cloudflare.com/ajax/libs/json2/20110223/json2.js"></script>
<script type="text/javascript" charset="utf-8" src="http://explorercanvas.googlecode.com/svn/trunk/excanvas.js"></script>
<![endif]-->

有了这段代码,你就可以获得boilerplatejs示例页面,并支持路由、主题和i18n。

然后,你会注意到,在点击计数器的例子中,无论你点击按钮多少次,你都不会赢。这是因为clickCounter/clickme组件发布的LOTTERY_ACTIVITY事件由于错误(?)在pubsub.js库中(不久前我甚至使用了submitted an issue )。要解决此问题,请修补libs\pubsub\pubsub-20120708.js,更改

代码语言:javascript
复制
params = (args.length > 1) ? Array.prototype.splice.call(args, 1) : []

与IE8兼容的呼叫:

代码语言:javascript
复制
params = (args.length > 1) ? Array.prototype.splice.call(args, 1, args.length-1) : []

恭喜..。你赢了!

我将修复Backbone TODO模块中的剩余问题留给您,您可以使用original code作为指导。

总而言之,我想说boilerplatejs 是完全兼容ie8的,任何不兼容的地方都来自支持库,而不是核心代码。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14650819

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档