我正在使用“document.createElement('input')”创建一个按钮输入。该按钮在所有浏览器中生成正常,但该功能不会像在所有其他浏览器中那样在IE 8(或IE 7)中触发。我测试了在IE 7和IE中调用的函数的代码。 8,它的工作原理。有没有人知道解决这个浏览器问题的方法? 谢谢你的帮助。
<script type="text/javascript">
function killWindow(){
window.open('', '_self', '');
window.close();
}
document.observe("dom:loaded",function(){
var forceCloseButton = document.createElement("input");
forceCloseButton.setAttribute("id","forceClose");
forceCloseButton.setAttribute("type","image");
forceCloseButton.setAttribute("src","SurveyResource/Button-Close");
forceCloseButton.setAttribute("class","button");
forceCloseButton.setAttribute("onclick","killWindow()");
var a=$('datstat_bottomcenterbuttons');
a.appendChild(forceCloseButton);
})
</script>
答案 0 :(得分:4)
您永远不应该使用setAttribute
设置事件处理程序。
您需要使用addEventListener
/ attachEvent
或直接设置onclick
。
同样设置类会有问题,请查看className。