我的页面上有这个JavaScript来切换div并在两个图像之间切换
<script type="text/javascript">
function toggleArchiv() {
document.getElementById('cat').toggle();
var image = document.getElementById('arrow');
if (image.src == 'bullet_arrow_down.png')
{
image.src = 'bullet_arrow_up.png';
}
else
{
image.src = 'bullet_arrow_down.png';
}
}
</script>
在现代浏览器上运行良好,但IE一直说该行有错误
document.getElementById('cat').toggle();
因此它不会切换div,也不会切换图像。怎么办?
答案 0 :(得分:1)
我认为问题是在HTMLElement上调用toggle()而不是jQuery对象。您应该使用jQuery选择器而不是像这样的getElementById():
$('#cat').toggle();
答案 1 :(得分:1)
在我看来,你正在使用PrototypeJS库。该库将向DOM元素添加方法,在这种特殊情况下,它会添加HTMLElement.prototype.toggle
。 DOM原型仅在IE8及更高版本中受支持,并且必须以标准模式呈现。要使其在所有浏览器中都有效,请使用$()
方法代替getElementById()
:
$('cat').toggle();