我有一些应该在dom上执行的代码,没有任何点击或任何其他操作。下面是代码:
if($.browser.msie){
console.log("Using getJSON");
$.getJSON(baseUrl,function(){
alert('hi');
});
}else{
setTimeout(function(){
$.get(baseUrl, function(data){
var boardNames = data;
for (i = 0; i < boardNames.length; i++) {
$('.boardSelectmulti').append('<option value="' + boardNames[i].Board + '">' + boardNames[i].Text + '</option>');
}
console.log("done");
$("#boardLinksi").hide();
$(".boardSelectmulti").val(form_data.showmode);
$(".boardSelectmulti").show();
}, "json");
},5000);
}
}
在其他浏览器中工作正常,但在IE中它永远不会触发。我甚至尝试了一个getJson调用仍然没有运气。任何想法为什么会发生这种情况?
提前致谢
答案 0 :(得分:1)
下载Free here的AJAX版。查看IE的时间线视图,然后查看FF,您可以轻松找到页面加载期间的差异以及导致问题的原因。
答案 1 :(得分:0)
IE控制台(按F12)打开时是否有效?如果这样,并且DroidOS指出在IE中控制台对象是未定义的,直到开发者控制台至少打开一次(另请参阅my question here)。
在脚本之上添加这个小代码:
<!--[if IE]>
<script type="text/javascript">
var console = console || {
log: function() {},
warn: function() {},
error: function() {}
};
</script>
<![endif]-->
确保在包含JS文件之前提供此信息。