JS脚本动态给控件添加事件

最近突然要用到JS脚本动态给元素添加事件。如TextBox的onclick事件。但有的onclick事件原先已经定义了相应代码!
这里又不能替代原有方法,隐约记得JS脚本里面有个方法可以给控件在原有事件的基础上进行添加!
翻了半天才翻出来,在这里记下,以方便以后有需时再来找!和和

<html>
<script language="javascript">
    
function set()
    
{
        
var obj = document.getElementById("fy");

        
//obj.attachEvent('onfocus', add); //在原先事件上添加
        //obj.setAttribute('onfocus',add); //会替代原有事件方法
        //obj.onfocus=add;                //等效obj.setAttribute('onfocus',add);        

        
if(window.addEventListener)
        

            
//其它浏览器的事件代码: Mozilla, Netscape, Firefox
            //添加的事件的顺序即执行顺序 //注意用 addEventListener 添加带on的事件,不用加on 
            obj.addEventListener('focus', add, false);
        }
 
        
else 
        
{
            
//IE 的事件代码 在原先事件上添加 add 方法
            obj.attachEvent('onfocus',add);       
        }

    }

    
function add(){alert("已经成功添加事件");}
</script>

<body>
    
<input type="text" onfocus="alert('预设事件');" id="fy" />
    
<input type="button" onclick="set();" value="sssss"/>
</body>

</html>

posted on 2008-03-21 11:01  冯岩  阅读(13982)  评论(5编辑  收藏  举报

导航