如题,用js写了个函数,在ie中能正常运行,但是,在火狐浏览器上就不行了。报错的地方在用颜色加注的地方,看不出来为什么出了问题。
function ShowTitle() {
if (http.readyState == 4 || http.readyState == "complete") {
var result = http.responseXML;
var list1 = document.getElementById("news_list1");
var list2 = document.getElementById("news_list2");
for (var i = 0; i < list1.childNodes.length ; i++) {
if (i < 5) {
list1.childNodes[i * 2].innerText = "·" + result.documentElement.childNodes[i].firstChild.text;
}
else {
list2.childNodes[(i*2 -10)].innerText = "·" + result.documentElement.childNodes[i].firstChild.text;
}
}
}
}用火狐的firebug调试,错误提示是:result.documentElement.childNodes[i] is undefined。具体到文件的list2.childNodes[(i*2 ...ement.childNodes[i].firstChild.text; 位置。火狐浏览器对js的容错的确没有ie好,可是,毕竟他是主流浏览器,做网页还必须要考虑到他。非常焦急,在线等,谢谢各位的建议和帮助。
function ShowTitle() {
if (http.readyState == 4 || http.readyState == "complete") {
var result = http.responseXML;
var list1 = document.getElementById("news_list1");
var list2 = document.getElementById("news_list2");
for (var i = 0; i < list1.childNodes.length ; i++) {
if (i < 5) {
list1.childNodes[i * 2].innerText = "·" + result.documentElement.childNodes[i].firstChild.text;
}
else {
list2.childNodes[(i*2 -10)].innerText = "·" + result.documentElement.childNodes[i].firstChild.text;
}
}
}
}用火狐的firebug调试,错误提示是:result.documentElement.childNodes[i] is undefined。具体到文件的list2.childNodes[(i*2 ...ement.childNodes[i].firstChild.text; 位置。火狐浏览器对js的容错的确没有ie好,可是,毕竟他是主流浏览器,做网页还必须要考虑到他。非常焦急,在线等,谢谢各位的建议和帮助。
兼容 IE、Firefox、Chrome、Safari、Opera 等浏览器的 XML 文件加载方式