var btn = document.getElementById('butn'); function change () { if (this.value === '显示') { this.value = '隐藏' } else { this.value = '显示' } alert(this); } if(btn.addEventListener){ btn.addEventListener('click', change); }else if(btn.attachEvent){ btn.attachEvent("click",change); alert("出来没"); //ie8兼容 alert这个出来了但是 这块没有反应。这是为什么呢? } 标题
内容
ie是onclick 另外 不要用this
attachEvent的时候 "click" 前面要加个"on"
btn.attachEvent("onclick",change); 试一下
看了一下你的chage函数里还调用了this
这样的话,要改成
btn.attachEvent("onclick",function(){ change.call(btn)});
才会正常的
正好之前写了一篇文章,点此