<script?type="text/javascript">
?? function?initEvent(){
?? var?inputs?=?document.getElementsByTagName("input");
?? for(var?i=0;i<inputs.length;i++){
?? var?input?=?inputs[i];
input.onclick?=?buttonClick;
? }
?? ?????}
??function?buttonClick(){
?var?inputs?=?document.getElementsByTagName("input");
??for(var?i=0;i<inputs.length;i++){
??var?input?=?inputs[i];
?if(input?==?event.srcElement){//?event.srcElement表示获取发生事件的控件是谁
??input.value="呜呜"
??}else{
??input.value="哈哈";
??}
??}
//window.alert(1);
??}
??initEvent();//?初始化不了,因为input标签还没有被解释执行到
??</script>
<body>
<input?type="button"?value="哈哈">???
?????<input?type="button"?value="哈哈">???
?????<input?type="button"?value="哈哈">???
?????<input?type="button"?value="哈哈">??
</body>?
?
此时需要在<body?onload="initEvent()">中这样既可 如下访问是不行的:原因看else中的注释 <script?type="text/javascript"> ?? ??function?initEvent(){ ?? var?inputs?=?document.getElementsByTagName("input"); ?? for(var?i=0;i<inputs.length;i++){ ?? var?input?=?inputs[i]; input.onclick?=function?buttonClick(){ if(this?==?event.srcElement){//?event.srcElement表示获取发生事件的控件是谁 ?? this.value="呜呜"; ?? }else{ //当点击某个文本框时,在此只判断了当前获得焦点的文本框对象是谁,当谁获得焦点就将其value设置为相应字符,对其他文本框未做处理。Else中永远不会执行。 ?? this.value="哈哈"; ?? } }; ? } ? //window.alert(1); ?? ?????} initEvent();//?初始化不了,因为input标签还没有被解释执行到 </script> <!--EndFragment-->
?
<!--EndFragment-->