部分代码:
<div id="hp_wrapper" class="chn-wrapper" style="width:968px;">
<div class="nav">
<div id="div1">
<asp:ImageButton ID="Img1" runat="server" onclick="Img1_Click"/>
</div>
<div id="div2">
<asp:ImageButton id="Img2" runat="server" onclick="Img2_Click" />
</div> </div>
<div class="style2" >
<asp:Label id="LA1" Font-Size="12" runat="server" />
<div style="display:inline-table; float:left;"><br />
<asp:ImageButton runat="server" Width="170" Height="190" ID="A1" onclick="A1_Click" />
</div>
</div>
</div>我要获取第二层容器div(即class="nav",class="style2"的div)用来实现div旋转?
但js里面我这样写:
var oimages = document.getElementById("hp_wrapper").getElementsByTagName("div")没反应,该怎么获取?
<div id="hp_wrapper" class="chn-wrapper" style="width:968px;">
<div class="nav">
<div id="div1">
<asp:ImageButton ID="Img1" runat="server" onclick="Img1_Click"/>
</div>
<div id="div2">
<asp:ImageButton id="Img2" runat="server" onclick="Img2_Click" />
</div> </div>
<div class="style2" >
<asp:Label id="LA1" Font-Size="12" runat="server" />
<div style="display:inline-table; float:left;"><br />
<asp:ImageButton runat="server" Width="170" Height="190" ID="A1" onclick="A1_Click" />
</div>
</div>
</div>我要获取第二层容器div(即class="nav",class="style2"的div)用来实现div旋转?
但js里面我这样写:
var oimages = document.getElementById("hp_wrapper").getElementsByTagName("div")没反应,该怎么获取?
var obj = document.getElementById('hp_wrapper').getElementsByTagName('div');
var oimages = [];
for (var i = 0; i < obj.length; i ++) if (obj[i].className != '') oimages.push(obj[i]);
alert(oimages.length); //2
var wrapper = document.getElementById('hp_wrapper');
var obj = document.getElementById('hp_wrapper').getElementsByTagName('div');
var oimages = [];
for (var i = 0; i < obj.length; i ++) if (obj[i].parentNode == wrapper) oimages.push(obj[i]);
alert(oimages.length); //2
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<div id="hp_wrapper" class="chn-wrapper" style="width: 968px;">
<div class="nav">
<div id="div1">
111
</div>
<div id="div2">
222
</div>
</div>
<div class="style2">
<div style="display: inline-table; ">
3333
</div>
</div>
</div>
<script>
var a = document.getElementsByTagName('div');
for (var i = 0; i < a.length; i++) {
if (a[i].className == 'nav') {
a[i].style.background = 'red';
}
if (a[i].className == 'style2') {
a[i].style.background = 'blue';
}
}
</script>
</body>
</html>
T5500,你好!我需要的就是<div id="hp_wrapper>容器下面的全部直接子节点,第三层的div不要,把这些div获取出来实现旋转效果,这些div都是<div class="style2" > </div>格式的
var pardiv = document.getElementById("hp_wrapper");
var childs = pardiv.childNodes;
for (var i = 0; i < childs.length; i++) {
if (childs[i].className == 'style2')
return childs[i];
}
}
按照4楼的代码,oimages数组中保存的已经是所有的直接子节点对象了。
$(".style2");
或者
$("div[class='style2']");
参考jQuery手册:属性http://download.csdn.net/detail/dmtnewtons/4126497
jQuery库http://download.csdn.net/detail/dmtnewtons/4233890