2013-01-17 72 views
3

此代碼是直接從knockoutjs.com教程採取:knockout.js使用jQuery 1.9.0中斷在IE 8

<ul data-bind="foreach: months"> 
    <li> 
     The current item is: <b data-bind="text: $data"></b> 
    </li> 
</ul> 

<script type="text/javascript"> 
    ko.applyBindings({ 
     months: [ 'Jan', 'Feb', 'Mar', 'etc' ] 
    }); 
</script> 

當我http://jsfiddle.net/SaZv8/與IE 8上運行這個它的工作原理,只要你不」包括jQuery 1.9.0。如果包含1.9.0,則會出現Object doesn't support this property or method錯誤。

有什麼想法? 謝謝!

+1

你應該爲jQuery 1.9.0更新到[knockoutjs 2.2.1](http://knockoutjs.com/downloads/knockout-2.2.1.js),但是這個錯誤是IE8的一個jsFiddle問題。 – mhu

回答

2

看起來錯誤發生在jsfiddle的代碼中:'heyoffline.js'有一個IE8不支持的addEventListener調用。 注意:我可以重新選擇其他庫,因此它與jQuery1.9無關。

+0

heyoffline-error也會發生,但它不是唯一的錯誤。我也在本地機器上遇到同樣的問題。而當切換到jQuery 1.8.3它的作品。 – Cotten

+0

你是對的,我的評論沒有回答你的問題。但是mhu也是對的:似乎淘汰賽2.2.1是jquery 1.9所必需的。這裏是代碼:http://jsfiddle.net/jBTmX 首先它混淆了IE8並隱藏了jsfiddle中的js代碼(在JS窗口中輸入一個enter使其顯示)。但它的工作。但是,如果將版本更改爲2.2.0,則會產生您遇到的錯誤。 – peterfoldi

+0

是的,我認爲mhu是對的。似乎淘汰賽2.2.1是jQuert 1.9所必需的 – Cotten