X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;ds=sidebyside;f=0.6.x%2Fjs%2Fdom%2F12_XDomEvent.js;fp=0.6.x%2Fjs%2Fdom%2F12_XDomEvent.js;h=10d79c3a3ce4dd8dee17509539ca323f4677c94b;hb=282579dfd2bde19c4b96b71471ae21b5a4ae57a3;hp=b29f3f8b56c3d736fc497e15ff7b32b05117d7dc;hpb=ea77d51a454c9bb5290df42ffe45b7b1477eab16;p=pettanr%2FclientJs.git diff --git a/0.6.x/js/dom/12_XDomEvent.js b/0.6.x/js/dom/12_XDomEvent.js index b29f3f8..10d79c3 100644 --- a/0.6.x/js/dom/12_XDomEvent.js +++ b/0.6.x/js/dom/12_XDomEvent.js @@ -217,6 +217,17 @@ X.Dom.Node.prototype._addEvent = raw.addEventListener( type, this._handleEvent, false ); }; }) : + X.Dom.EVENT_W3C && X.UA.Opera7 ? + (function( type ){ + var raw = this._rawNode; + if( !raw ) return; + this._handleEvent = this._handleEvent || X.Callback.create( this ); + if( raw === window ){ + raw[ 'on' + type ] = this._handleEvent; + } else { + raw.addEventListener( type, this._handleEvent, false ); + }; + }) : X.Dom.EVENT_W3C ? (function( type ){ this._rawNode && this._rawNode.addEventListener( X.Dom.Event.Rename[ type ] || type, this, false ); @@ -261,6 +272,21 @@ X.Dom.Node.prototype._removeEvent = delete this._handleEvent; }; }) : + X.Dom.EVENT_W3C && X.UA.Opera7 ? + (function( type ){ + var raw = this._rawNode; + if( !raw ) return; + + if( raw === window ){ + raw[ 'on' + type ] = null; + } else { + raw.removeEventListener( type, this._handleEvent, false ); + }; + if( !this._listeners ){ + X.Callback._correct( this._handleEvent ); + delete this._handleEvent; + }; + }) : X.Dom.EVENT_W3C ? (function( type ){ var elm = this._rawNode; @@ -379,11 +405,9 @@ if( X.UA.WebKit || ( X.UA.Safari && X.UA.Safari < 3 ) ){ // sniff if( 'loaded|complete'.indexOf( document.readyState ) !== -1 ) return X.Dom._init(); }); }; - /* for other browsers */ - Node._window.listenOnce( 'load', X.Dom._init ); - - +/* for other browsers */ +Node._window.listenOnce( 'load', X.Dom._init ); // X.Dom.listenOnce( X.Dom.Event.XDOM_READY, function(e){