我正在用jquery和knockoutjs构建一个客户端应用程序。它在FF和Chrome中运行良好,但在IE v8中以一种非常令人费解的方式崩溃。
为了进行调试,我正在运行此代码:
$(document).ready(function(){
//A bunch of code that works fine ...
//...
alert( viewModel );
alert( ko.toJSON );
alert( ko.toJSON(viewModel) );
ko.applyBindings(viewModel);
alert( "Done" );
});
IE给了我两个警告框:
[object Object]
和
function(a){a=p.oa(a);return p.a.Y(a)}
第一个是我的viewModel。我相信第二个是最小化的ko.toJSON命令。为什么不能运行第三个警报?即使我将viewModel设置为简单的事情,例如{};
,也会发生这种情况(顺便说一句,ko.applybindings行也不起作用。这就是我首先调试的原因。)
答案 0 :(得分:1)
您好像在IE 8兼容模式或IE 7模式下运行。点击F12并检查您的浏览器模式。
答案 1 :(得分:0)
我知道某些版本的IE本身不支持JSON,因此必须将其作为JavaScript包含在内。 Crockford的JSON2解析器:https://github.com/douglascrockford/JSON-js
但IE的兼容模式,如果设置正确,也应该解决这个问题。