最近在做一个项目,要求兼容低版本浏览器,在IE浏览器下,不管浏览器模式是什么,只要我的文档模式为IE9或标准,网页都能正常显示;当我的文档模式改为IE8及以下时,网页就显示不出来了~
以下这段代码:
buildNavPageHtml : function(pageObj){
var html='';
var liItem='';
for(var i=0;i<pageObj.length;i++){
liItem="<li><span></span><p>"+pageObj[i].name+"</p></li>";
html=html+liItem;
}
return html;
},
标红部分网页提示错误如下:
SCRIPT5007: 无法获取未定义或 null 引用的属性“name”
请问怎么解决,我改了好多次都没解决,请大家帮帮忙,万分感谢!
出现这个错误提示是因为pageObj[i]
的值为null或undefined,问题应该出在调用buildNavPageHtml()
函数的地方
initNavLeftHtml : function(){
var level=common.functions.getSiLevel();
var matchedNavObj=common.functions.getMatchLevelNavObj(level);
if(matchedNavObj){
var navInnerHTML=common.functions.buildNavPageHtml(matchedNavObj.pages);
$('#navUl').html(navInnerHTML);
}
},
这个地方调用了buildNavPageHtml()函数,问题出在这么
@Y&J: 打印一下 matchedNavObj.pages 的值看看
@dudu: 谢谢博主,这个问题已经解决了,感谢!