1

我使用jqGrid 4.13.0,它似乎導致使用IE8時出錯。錯誤在jquery.fmatter模塊中進行了本地化。jqGrid 4.13.0錯誤與IE8 Object.create

YesObjectNoObject使用Object.create它不是IE8兼容。任何想法的解決方法?非常感謝。

var fmatter = $.fmatter, 
    getOptionByName = function (colModel, name) { 
     ... 
    }, 
    parseCheckboxOptions = function (options) { 
     ... 
    }, 
    YesObject = Object.create(null, { 
     1: { value: 1 }, 
     x: { value: 1 }, 
     "true": { value: 1 }, 
     yes: { value: 1 }, 
     on: { value: 1 } 
    }), 
    NoObject = Object.create(null, { 
     0: { value: 1 }, 
     "false": { value: 1 }, 
     no: { value: 1 }, 
     off: { value: 1 } 
    }); 
+0

你是否需要支持ie8?有沒有很多網格功能支持ie8了... – erichardson30

+0

我確實想支持IE8,但我沒有任何計算機與IE8進行測試。我會將修復發佈到GitHub上,並會要求您進行測試。 – Oleg

回答

1

非常感謝您的錯誤報告!我有技術問題來測試IE8上的免費jqGrid,但我不想放棄支持它,直到它真的需要。

Object.create奇怪用法的原因是the test,它顯示瞭如何更好地測試數組中元素的存在。在我所有的現代網絡瀏覽器測試中,使用Object.create的方式更好,我最初選擇它。

我承諾the bug fix GitHub。請從the repository獲取最新信息。

+0

在IE 8上測試確定 – jfprevot

+0

@jfprevot:您沒有[「接受」](http://meta.stackexchange.com/a/5235/147495)答案。你想做一些額外的測試嗎? – Oleg

+0

對不起,我忘了「接受」。做得好 ! – jfprevot