CopyCode The Code is as follows: array. Prototype. inarray = function (value ){
VaR I;
For (I = 0; I <this. length; I ++ ){
If (this [I] === value ){
Return true;
}
}
Return false;
};
function addevent (OBJ, type, FN) {
If (obj. addeventlistener) {
obj. addeventlistener (type, FN, false);
eventcache. add (OBJ, type, FN);
}< br> else if (obj. attachevent) {
OBJ ["E" + Type + FN] = FN;
OBJ [type + FN] = function () {OBJ ["E" + Type + FN] (window. event) ;}< br> obj. attachevent ("On" + type, OBJ [type + FN]);
eventcache. add (OBJ, type, FN );
}< br> else {
OBJ ["on" + type] = OBJ ["E" + Type + FN];
}< BR >}
VaR eventcache = function (){
VaR listeven Ts = [];
Return {
Listeven ts: listeven ts,
Add: function (node, seventname, fhandler ){
Listeven ts. Push (arguments );
},
Flush: function (){
VaR I, item;
For (I = listeven ts. Length-1; I> = 0; I = I-1 ){
Item = listeven ts [I];
If (item [0]. removeeventlistener ){
Item [0]. removeeventlistener (item [1], item [2], item [3]);
};
If (item [1]. substring (0, 2 )! = "On "){
Item [1] = "on" + item [1];
};
If (item [0]. detachevent ){
Item [0]. detachevent (item [1], item [2]);
};
Item [0] [item [1] = NULL;
};
}
};
}();
Addevent (window, 'unload', eventcache. Flush );