来看看ie下getAttribute的奇怪表现:
<!
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 >
< title > 无标题页 </ title >
< meta http-equiv ="X-UA-Compatible" content ="IE=EmulateIE7" />
< script type ="text/javascript" >
function say(){
alert( " 好懒啊,什么都不想写。。 " )
}
function getBtnAttribute(){
var attr = document.getElementById( " btnWrite " ).getAttribute( " onclick " );
alert(attr);
}
function getAttrToOtherOne(){
var attr = document.getElementById( " btnWrite " ).getAttribute( " onclick " );
}
function copyFn(ele){
alert( " 我要将“写点东西吧”按钮上的onclick用getAttribute获得到后给其他dom!(IE) " )
var attr = document.getElementById( " btnWrite " ).getAttribute( " onclick " );
ele.onclick = attr
}
function useAttr(){
var attr = document.getElementById( " btnWrite " ).getAttribute( " onclick " );
attr();
}
</ script >
</ head >
< body >
< input id ="btnWrite" type ="button" value ="写点东西吧" onclick ="say()" />
< input type ="button" value ="getAttribute在IE和firefox的表现" onclick ="getBtnAttribute()" />
< hr />
< input type ="button" value ="ie下用getAttribute获得到onclick对象可以直接赋给其他Dom???" onclick ="copyFn(this)" />
< hr />
< input type ="button" value ="ie下用getAttribute获得到onclick对象并直接使用" onclick ="useAttr()" />
<!-- 简单的说ie下用getAttibute获得dom元素的事件,是一个函数,而不是单纯的字符串 -->
</ body >
</ html >
< html xmlns ="http://www.w3.org/1999/xhtml" >
< head >
< title > 无标题页 </ title >
< meta http-equiv ="X-UA-Compatible" content ="IE=EmulateIE7" />
< script type ="text/javascript" >
function say(){
alert( " 好懒啊,什么都不想写。。 " )
}
function getBtnAttribute(){
var attr = document.getElementById( " btnWrite " ).getAttribute( " onclick " );
alert(attr);
}
function getAttrToOtherOne(){
var attr = document.getElementById( " btnWrite " ).getAttribute( " onclick " );
}
function copyFn(ele){
alert( " 我要将“写点东西吧”按钮上的onclick用getAttribute获得到后给其他dom!(IE) " )
var attr = document.getElementById( " btnWrite " ).getAttribute( " onclick " );
ele.onclick = attr
}
function useAttr(){
var attr = document.getElementById( " btnWrite " ).getAttribute( " onclick " );
attr();
}
</ script >
</ head >
< body >
< input id ="btnWrite" type ="button" value ="写点东西吧" onclick ="say()" />
< input type ="button" value ="getAttribute在IE和firefox的表现" onclick ="getBtnAttribute()" />
< hr />
< input type ="button" value ="ie下用getAttribute获得到onclick对象可以直接赋给其他Dom???" onclick ="copyFn(this)" />
< hr />
< input type ="button" value ="ie下用getAttribute获得到onclick对象并直接使用" onclick ="useAttr()" />
<!-- 简单的说ie下用getAttibute获得dom元素的事件,是一个函数,而不是单纯的字符串 -->
</ body >
</ html >
可以把以上代码搞下来运行试试:
-------------------------------------------------------------------------------
看图:
firefox:
IE:
------------------------------------------------------------------
在看看IE下其他按钮点击后有什么表现:
简单的说就是:ie下用getAttibute获得dom元素的事件,是一个函数,而不是单纯的字符串