[英]I made some voting buttons (think reddit/digg/etc) however they don't work below IE8
[英]Can boilerplatejs be made to work with IE8?
我想將sampplatejs用於即將到來的Intranet項目,但是,許多機器仍然是帶有IE8的WinXP(並且在大規模Firefox或Chrome部署的組織中沒有選項)。
我很快嘗試合並html5shiv,但這似乎沒有幫助。 它沒有出現路由或其他功能正常工作。 我試圖弄清楚這是否值得做,或者是否有人試圖讓這個工作,然后花更多的時間在它上面。
並不是的。 這就是h5bp中的代碼
<!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]-->
這些是條件條款,適用於<9的優雅降級。
如果這是一個很多人都在<9的項目,那么使用xhtml可能會更好......只是一個工程考慮因素
事實上,您遇到的最困難的問題不是關於樣板,而是外部庫。
具體的調整取決於您在應用程序中使用的功能,但首先需要的是
<section>
把它放在你的<head>
部分里面:
<!--[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]-->
有了這個片段,你將獲得樣板頁面工作,路由,主題和i18n支持。
然后,您會注意到,在Click Counter示例中,無論您單擊按鈕多少次,都不會獲勝。 這是因為clickCounter / clickme組件發布的LOTTERY_ACTIVITY
事件由於pubsub.js庫中的錯誤(?)而沒有到達任何偵聽器(我甚至在前一段時間提交了一個問題 )。 要解決它,請修改libs \\ pubsub \\ pubsub-20120708.js ,更改
params = (args.length > 1) ? Array.prototype.splice.call(args, 1) : []
到IE8兼容的電話:
params = (args.length > 1) ? Array.prototype.splice.call(args, 1, args.length-1) : []
恭喜你......你好!
我將Backbone TODO模塊中的剩余問題留給您解決,您可以使用原始代碼作為指導。
總而言之,我認為boilerplatejs完全兼容IE8 ,任何不兼容性來自支持庫,而不是核心代碼。
BoilerplateJS核心沒有設計任何HTML5功能。 雖然我還沒有在IE8中測試它,但我相信通過一些調整可以實現這一點。 例如,如果crossroadsJS,用於路由的庫與IE8不兼容,您仍然可以使用pathJS或其他與IE8兼容的東西輕松替換它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.