解决方案 »
- 怎么解决jQuery与AjaxPro相冲突的问题
- JavaScript调用MSComm一点反应也没有
- 大难题来了! 有什么办法通过JavaScript实现实时的语法高亮显示?
- 密码框问题
- 关于XML操作的encoding="gb2312"的问题
- 如何用javascript脚本的正则表达式在字符串中取出仅仅是数字符号的值
- 紧急求助!怎么输出不了?在线等!
- 请问如何在js中新建一个word文本,并打开word
- 如何用<body onload = fun()>让其他frame自动载入
- 按钮点击时,ajax 请求,显示‘加载动画图片’,
- 只用js不用CSS实现下拉菜单
- javascript/jquery跟activex交互,即与object对象交互
window.onload=function(){
alert(document.getElementById("main").getElementsByTagName("div")[1].innerHTML)
}
</script>
<div id="main">
<div></div>
<div>test</div>
</div>上面这样写并不会有错的。
document.getElementById("main").getElementsByTagName("div")[1]在各浏览器中应该都是可以使用的
这样写是没问题的。
你要么就贴出使用部份的相关代码和DOM结构。要么就自己参照我上面的用法可以肯定的是:document.getElementById("main").getElementsByTagName("div")[1]
功能是:获取id=main容器中的第二个div标签这样用不会有什么兼容性问题,也不会出错。如果你使用不行,要么就是这条语句执行的时候对象不存在,要么就是DOM不是那样的结构
alert(document.getElementById("main").getElementsByTagName("div").length);
function goto(index)
{
var maincon = document.getElementById("main");
var auxcon = document.getElementById("auxiliary");
for (var i = 0; i < maincon.childNodes.length; ++i)
if (index - i)
maincon.childNodes[i].style.display = "none";
else
switch(index){
case 1:
if (uname){
maincon.childNodes[i].style.display = "inline";//topic
auxcon.childNodes[1].style.display = "inline";//sidebar
maingoto(0);
}
else{
maincon.childNodes[i].style.display = "none";//topic
auxcon.childNodes[1].style.display = "none";//sidebar
index = 5;
}
break;
default:
maincon.childNodes[i].style.display = "inline";//topic
}
}把这段js黏贴上来,这段代码在ie里可以正确运行,但是在firefox里就不行了,childNodes都是div,我把childNodes改为getElementsByTagName("div")还是不行,在ie里也不行
要么就是DOM不是那样的结构这句话是什么意思?我是新手啦
<div>
<div></div>
//这里的换行在火狐貌似就会被看成其中的一个子节点。
<div></div>
</div>