+\r
+function X_Util_NinjaIframe_handleEvent( e ){\r
+ var raw = this[ '_rawObject' ];\r
+ \r
+ switch( e.type ){\r
+ case X_EVENT_AFTER_UPDATE :\r
+ this._iwin = raw.contentWindow || ( raw.contentDocument && raw.contentDocument.parentWindow ) || window.frames[ this._name ];\r
+ // http://d.hatena.ne.jp/NeoCat/20080921/1221940658\r
+ // こちらに名前をsetしないとtargetが動作しない\r
+ if( X_UA[ 'IE' ] ) this._iwin.name = this._name;\r
+ \r
+ this[ 'listen' ]( [ X_UA[ 'IE' ] < 9 ? 'readystatechange' : 'load', 'error' ], this, X_Util_NinjaIframe_handleEvent );\r
+ \r
+ if( !( X_UA[ 'IE' ] < 9 ) ){\r
+ this._contentHTML && X_Util_NinjaIframe_writeToIframe( this );\r
+ this._ready = true;\r
+ return;\r
+ };\r
+ //break; これあると IE8 で駄目!\r
+ \r
+ case 'readystatechange' :\r
+ if( ( raw.readyState !== 'complete' && raw.readyState !== 'loaded' ) ) break;\r
+ // ie9-\r
+ if( !this._ready ){\r
+ this._contentHTML && X_Util_NinjaIframe_writeToIframe( this );\r
+ this._ready = true;\r
+ break;\r
+ };\r
+ // onload\r
+ case 'load' :\r
+ console.log( 'iframe load.' );\r
+ this[ 'asyncDispatch' ]( X_EVENT_SUCCESS );\r
+ break;\r
+\r
+ case 'error' :\r
+ this[ 'asyncDispatch' ]( X_EVENT_ERROR );\r
+ break;\r
+ };\r
+ \r
+ return X_Callback_STOP_PROPAGATION;\r
+};\r
+\r