是否指的是某ajax框架中的addEventListener? 
直接用的话还是要判断一下.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>无标题文档 </title> 
<script type="text/javascript"> 
function init(){
alert('init');
var but = document.getElementsByTagName('input')[0]; 
if(document.all) but.attachEvent('onclick',ale);
else but.addEventListener('click',ale,false); 

function ale(){ 
alert('xxx'); 

window.onload = init; 
</script> 
</head> 
<body> 
  <input type="button" name="ddd" value="ddd" /> 
</body> 
</html>

解决方案 »

  1.   

    在外面看到有人回帖了,怎么进来看不到呢,bug
      

  2.   

    你那种写法只符合FF的,IE的情况下应该 使用but.attachEvent("onclick", ale),可以使用通用的方法去调用,如下的attachObjectEvent
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
    <title>无标题文档 </title> 
    <script type="text/javascript"> 
    function attachObjectEvent(element, name, observer) {
        if (element.addEventListener) {
            element.addEventListener(name, observer, false);
        } else if (element.attachEvent) {
            element.attachEvent("on" + name, observer);
        }
    }
    function init(){ 
    alert('init'); 
    var but = document.getElementsByTagName('input')[0]; 
    attachObjectEvent(but,"click",ale);

    function ale(){ 
    alert('xxx'); 

    window.onload=init; 
    </script> 
    </head> 
    <body> 
    <input type="button" name="ddd" value="ddd" /> 
    </body> 
    </html>
      

  3.   

    谢谢hookee,我明白了
    IE中用attachEvent
    FF中用addEventListener