我有一个页面(实际上,大约三十左右),我试图根据查询字符串变量更改特定元素的类名。除了这部分,一切都很好,我得到了一个非常奇怪的结果......
var hitAreas = document.getElementsByClassName('hitArea');
alert(hitAreas.length);
for(hitArea in hitAreas)
{
alert(hitAreas[hitArea]);
hitAreas[hitArea].className = 'hitArea_practice';
}
警报(hitAreas.length);行正确返回了类名“hitArea”的元素数量(7,来自下面的 html),但是当我遍历 hitAreas 时,它只会更改页面上每个其他元素的类名。中途返回 undefined 作为 alert(hitAreas[hitArea]); 的值 大概是因为它试图引用索引超过 6 的数组元素。
html页面的正文:
<body onload="toggleHotspotHints();">
<div>
<img src="Dashboard1.jpg" width="1440" height="795" />
<div class="hitArea" style="top: 55px; left: 230px; width: 72px; height: 17px;" onclick="gotoPage('BatchReconcile/1-ClaimsReconcileMenu');"></div>
<div class="hitArea" style="top: 55px; left: 319px; width: 72px; height: 17px;" onclick="gotoPage('Eligibility/PP Elig 1');"></div>
<div class="hitArea" style="top: 55px; left: 409px; width: 72px; height: 17px;" onclick="gotoPage('REPORTS/5-Dashboard Reports List');"></div>
<div class="hitArea" style="top: 137px; left: 260px; width: 145px; height: 21px;" onclick="gotoPage('Dash2_Messages');"></div>
<div class="hitArea" style="top: 223px; left: 247px; width: 126px; height: 19px;" onclick="gotoPage('ClaimsList_Failed');"></div>
<div class="hitArea" style="top: 242px; left: 247px; width: 126px; height: 14px;" onclick="gotoPage('PayerReportList');"></div>
<div class="hitArea" style="top: 258px; left: 247px; width: 126px; height: 14px;" onclick="gotoPage('ADM/1_trending graph');"></div>
</div>
现场演示:http: //jsfiddle.net/simevidas/LE6UN/