各浏览器中javascript兼容性问题


1、使用setAttribute()改变网页中标签的onclick属性
2、IE中通过 setAttribute添加的属性



1、使用setAttribute()改变网页中标签的onclick属性 *p1

      setAttribute设置style和onclick这些属性在IE中是行不通的。

< script type = " text/javascript " >
    
function  cancleEvent()
    {
        document.getElementById('a').setAttribute(
" onclick " ,'');
        document.getElementById('g').innerHTML
= " 取消事件! " ;
    }

    
function  setEvent()
    {
        document.getElementById('a').setAttribute(
" onclick " ,'alert( " 你好! " )'); // firefox     
        document.getElementById('a').onclick
=   function  () { alert( " This is a test! " ); } // IE firefox也有作用,但是使用firebug调试看不到修改后的效果,使用上面的方法可以看到。     
        document.getElementById('Div1').innerHTML
= " 设置事件! " ;
    }
</ script >


注:
*p1:使用setAttribute()改变网页中标签的onclick属性    http://blog.csdn.net/Cnami/archive/2008/05/27/2486516.aspx




2、IE中通过 setAttribute添加的属性 *p2

      IE下setAttribute设置元素的对象、集合和事件属性都只当成普通属性,起不到原有的作用,但可以直接进行赋值操作。

< script language = " javascript "  type = " text/javascript " >
<!--
function  init() {
    
var  obj  =  document.getElementById( " btn " );
    obj.onclick
= changeValue;
    obj.style.background
= " #CC6600 " ;
}
function  changeValue() {
    document.getElementById(
" txt " ).value  =   " New value! " ;
}
-->
</ script >


注:
*p2:[求助]通过 setAttribute 添加的属性在 IE 下不被实现? http://bbs.blueidea.com/viewthread.php?tid=2290521




你可能感兴趣的:(JavaScript)