function OnCancel(){
 document.getElementById("seal").style.display="none";
 document.getElementById("logwindow").style.display="none";
 document.getElementById("loguser").focus();
 document.getElementsByTagName("body")[0].style.overflow="visible";
}
document.getElementById('cancel').onclick=OnCancel;
用上面这行代码,或者下面这行:
document.getElementByld('cancel').addEventListener('click',OnCancel,true);
都注册不了,只有用最最原始的方法<p onclick="OnCancel">才行,请问这是为什么?莫非人品问题?呵呵,请帮忙解决下,先在此谢过了。 
我用了所有的主流浏览器(IE,chrom,opera safari ff)都是最新版的,都是一样的反应,,不能识别代码。只有用<p onclick="OnCancel()">才行,我都快郁闷死了。 我放到最下面,和onload中都试过啊,但是还是不行啊,到那行代码就执行不过去,我都快疯了。

解决方案 »

  1.   

    在文件头里面声明
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">有效果吗?
      

  2.   

    把document.getElementById('cancel').onclick=OnCancel;
    改成document.getElementById('cancel').onclick=function(){OnCancel();};
      

  3.   

    document.getElementByld('cancel').addEventListener('click',OnCancel,true);
    这个在IE下不行吧,只能是Firefox内核的才行
      

  4.   

    我测试过document.getElementByld('cancel')的值,结果是null,也就是说id为cancel的元素还没有加载到,这行代码就执行了,所以返回值为null,但是我已经把他放到代码的最下面了,甚至放到ONLOAD的中了,可还是不行,是不是不支持这行代码?但是我用的都是最新的所有主流浏览器啊?有什么办法没有,各位?