我已经尝试过并尝试过...我似乎无法在IE中完成这项工作(测试版本6) 有谁能够帮我? IE抱怨错误,但拒绝告诉它是哪个错误......
var a = document.getElementsByTagName("a");
for (i = 0; i < a.length; i++) {
if (a[i].getAttribute("class") == "info-link") {
a[i].onclick = function(e) {
e = e || window.event;
var target = e.srcElement || e.target;
var info = target.parentNode.getElementsByTagName("div")[0];
if (info.style.display == "none" || info.style.display == "") {
info.style.display = "block";
} else {
info.style.display = "none";
}
return false;
}
}
}
<div class="auxdata">
<a href="#" class="info-link">Esta questão possuí dados anexos. Clique para ver.</a>
<div style="display: none;" class="info-inner">
<!-- variable stuff here -->
</div>
</div>
答案 0 :(得分:0)
当你越过那个时,检查IE如何阅读样式属性 - 它可以大写源代码中小写的样式值,如'NONE','BLOCK'。
答案 1 :(得分:0)
正如 @Magnar 所说的那样(+ 1),我会包含jQuery,它有一个简单易用的方法
jQuery(elem OR "selector").click(function(e){}).
至少你可以查看它的代码,看看它是如何处理click()句柄的