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で使えなかったー。