我正在使用“ document.createElement('input')”动态创建按钮输入。该按钮在所有浏览器中均可正常运行,但该功能不会像在所有其他浏览器中一样在IE 8(或IE 7)中触发。我测试了在IE 7和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>
最佳答案
永远不要使用setAttribute
设置事件处理程序。
您需要使用addEventListener
/ attachEvent
或直接设置onclick
。
另外设置class也会遇到问题,请查看className。