onchangeとか拡張



Element.prototype.applyOnEvent = function(type, func, args, ignoreEvent) {
var self = this;
self[type] = function (event) {
var ev = event || window.event;
if (ignoreEvent != true)
if (typeof args[0] !== typeof ev)
args.unshift(ev);
else if (typeof args[0] === typeof ev)
args[0] = ev;

func.apply(func, args);
};
};
イベント系拡張。
onChangeとかonFocusとかのイベントに引数そんままもって行きたいときに、文字列でくくらないでよくする。
恐らくそこら辺にいっぱいもう出てそうだけど、勉強のためにモンモンと考えてみた。
自分用なので汎用性はないかも。



list.applyOnEvent('onmouseover', Hoge.Fuga, [3, 4, layerID], true);
呼び出し方。
一個目:イベントハンドラ?名
二個目:実行するオブジェクト
三個目:引数
四個目:実行するオブジェクトにeventオブジェクトを先頭に追加するかしないか
IEで使えなかったー。