1/******************************************************************************** 2 3 [I[o[Zb^[ 4 ì¬Ò Masashi Kikkawa 5 6 yà¾z 7 imgvfàµÍinputitype=imagejvfÌclass®«ÉurollovervðüêéÆ 8 }EXI[o[ɳÌt@C¼Éu_onvðt¯½t@CÅu«·¦éB 9 NbJu}bvðgp·éêÍK¸imgvfÉid®«ðwè·é±ÆB 10 u«·¦éæÍareavfÌLqÉu_on1A_on2AcvÆ·éB 11 12 yXVðz 13 2008.07.03 v.1.07 14 v1.05ÌüÇÅAMacIEÅ®ìµÈÈÁÄ¢½oOðC³B 15 2008.05.17 v.1.06 16 IEpPNGtB^Zb^[ÆÌA®ÉÎB 17 2008.05.15 v.1.05 18 ¡ÌNXwèÉÎB 19 2007.12.18 v.1.04 20 ù¶CxgðÀsµÄ©ç[I[o[·éæ¤ÉðÏXB 21 2007.12.13 v.1.03 22 ù¶ÌonmouseoverAonmouseoutCxgðXgbNAÀs·éæ¤ÉüÇB 23 2007.09.26 v.1.02 24 v.1.01ÌüÇÅAMacIEÅ®ìµÈÈÁÄ¢½oOðC³B 25 2007.08.04 v.1.01 26 inputvfÌ^CvªimageÌàÌÉÎB 27 \[XðSÊ«¼µ 28 2007.06.16 v.1.00 29 öJB 30 31********************************************************************************/ 32 33 34 35//_______________________________________________________________________________ 36// [I[o[ 37var eoRollOver = new class_eoRollOver(); 38function class_eoRollOver() 39{ 40 this.objOnload = window.onload; // ù¶ÌonloadCxg 41 42 this.aEventMouseOver = []; // ù¶ÌæÌonmouseoverCxgXgbN 43 this.aEventMouseOut = []; // ù¶ÌæÌonmouseoutCxgXgbN 44 45 this.aPreLoad = []; // v[hp 46 47 //___________________________________________________________________________ 48 // [I[o[ú» 49 this.Init = function() 50 { 51 var aImgList = new Array(); 52 var aInputList = new Array(); 53 var aImgStock = new Array(); 54 55 // ù¶ÌonLoadCxgðÀs 56 if( this.objOnload != null ) this.objOnload(); 57 58 // Î`FbN 59 if( !document.getElementsByTagName ) 60 { 61 return; 62 } 63 64 // <input>Ìêðæ¾µÄõ 65 aInputList = document.getElementsByTagName( 'input' ); 66 for( var i=0;
66 i<aInputList.length; i++ ) 67 { 68 // ^CvÆNX¼»è 69 if( aInputList[i].type == 'image' && /(^|\s)rollover(\s|$)/.test( aInputList[i].className ) ) 70 { 71 aImgStock[aImgStock.length] = aInputList[i]; 72 } 73 } 74 75 // <img>Ìêðæ¾µÄõ 76 aImgList = document.getElementsByTagName( 'img' ); 77 for( var i=0; i<aImgList.length; i++ ) 78 { 79 // NX¼»è 80 if( /(^|\s)rollover(\s|$)/.test( aImgList[i].className ) ) 81 { 82 aImgStock[aImgStock.length] = aImgList[i]; 83 } 84 } 85 86 // CxgZbg 87 for( var i=0; i<aImgStock.length; i++ ) 88 { 89 // gptOðZbg 90 this.SetUseFlg( aImgStock[i] ); 91 92 // t@C¼ðæ¾ 93// if( /(^|\s)iepngfilter(\s|$)/.test( aImgStock[i].className ) ) 94 if( typeof( eoPngFilter ) == 'object' && eoPngFilter.GetUseFlg( aImgStock[i] ) ) 95 { // IEpPNGtB^ªKp³êÄ¢éê 96 var vSrc = eoPngFilter.GetAlphaImageLoaderSrc( aImgStock[i] ); 97 } 98 else 99 { // ÊíÌæÌê 100 var vSrc = aImgStock[i].getAttribute( 'src' ); 101 } 102 103 // t@C¼Æg£qɪ 104 var vImgName = vSrc.substring( 0, vSrc.lastIndexOf('.') ); 105 var vImgEx = vSrc.substring( vSrc.lastIndexOf('.'), vSrc.length ); 106 107 // NbJu»è 108 if( !aImgStock[i].useMap ) 109 { // ÊíÌæÌê 110 this._InitImage( aImgStock[i], vImgName, vImgEx ); 111 } 112 else 113 { // NbJu}bvÌê 114 this._InitMap( aImgStock[i], vImgName, vImgEx ); 115 } 116 } 117 }; 118 119 //___________________________________________________________________________ 120 // æú» 121 this._InitImage = function( objImg, vImgName, vImgEx ) 122 { 123 var vPreLoad; 124 125 // ù¶CxgÌXgbN 126 this._StockEvent( objImg ); 127 128 // Agr [gÉZbg 129 objImg.setAttribute( 'src_off', vImgName + vImgEx ); 130 objImg.setAttribute( 'src_on', vImgName + '_on' + vImgEx ); 131 132 // v[h 133 this._PreLoad( objImg.getAttribute( 'src_on' ) ); 134 135 // CxgÝè 136 objImg.onmouseover = function() 137 { 138 // XgbNCxgðÀs 139 if( eoRollOver.aEventMouseOver[this.getAttribute( 'eventstock_no' )] ) 140 { 141 eoRollOver.aEventMouseOver[this.getAttribute( 'eventstock_no' )](); 142 } 143 144 // æðÏX 145 if( typeof( eoPngFilter ) == 'object' && eoPngFilter.GetUseFlg( this ) ) 146 { // IEpPNGtB^ªKp³êÄ¢éê 147 eoPngFilter.SetAlphaImageLoader( this, this.getAttribute( 'src_on' ) ); 148 } 149 else 150 { // ÊíÌæÌê 151 this.setAttribute( 'src', this.getAttribute( 'src_on' ) ); 152 } 153 } 154 objImg.onmouseout = function() 155 { 156 // XgbNCxgðÀs 157 if( eoRollOver.aEventMouseOut[this.getAttribute( 'eventstock_no' )] ) 158 { 159 eoRollOver.aEventMouseOut[this.getAttribute( 'eventstock_no' )](); 160 } 161 162 // æðÏX 163 if( typeof( eoPngFilter ) == 'object' && eoPngFilter.GetUseFlg( this ) ) 164 { // IEpPNGtB^ªKp³êÄ¢éê 165 eoPngFilter.SetAlphaImageLoader( this, this.getAttribute( 'src_off' ) ); 166 } 167 else 168 { // ÊíÌæÌê 169 this.setAttribute( 'src', this.getAttribute( 'src_off' ) ); 170 } 171 } 172 }; 173 174 //___________________________________________________________________________ 175 // NbJu}bvú» 176 this._InitMap = function( objImg, vImgName, vImgEx ) 177 { 178 var aMapList; 179 var aAreaList; 180 var vPreLoad; 181 182 // IDZbg»è 183 if( !objImg.id ) 184 { // G[ 185 alert( '[I[o[Zb^[ G[\nNbJu}bvðg¤êÍ<img>ÉIDðwèµÄ¾³¢B' ); 186 return; 187 } 188 189 // mapÌêðæ¾µÄõ 190 aMapList = document.getElementsByTagName( 'map' ); 191 for( var j=0; j<aMapList.length; j++ ) 192 { 193 // ÎÛ}bv»è 194 if( '#' + aMapList[j].name == objImg.useMap ) 195 { 196 // gpµÄ¢émapÌareaêðæ¾µÄõ 197 aAreaList = aMapList[j].getElementsByTagName( 'area' ); 198 for( var k=0; k<aAreaList.length; k++ ) 199 { 200 // ù¶CxgÌXgbN 201 this._StockEvent( aAreaList[k] ); 202 203 // Agr [gÉZbg 204 aAreaList[k].setAttribute( 'src_off', vImgName + vImgEx ); 205 aAreaList[k].setAttribute( 'src_on', vImgName + '_on' + (k+1) + vImgEx ); 206 aAreaList[k].setAttribute( 'tgt_id', objImg.id ); 207 208 // v[h 209 this._PreLoad( aAreaList[k].getAttribute( 'src_on' ) ); 210 211 // CxgÝè 212 aAreaList[k].onmouseover = function() 213 { 214 // XgbNCxgðÀs 215 if( eoRollOver.aEventMouseOver[this.getAttribute( 'eventstock_no' )] ) 216 { 217 eoRollOver.aEventMouseOver[this.getAttribute( 'eventstock_no' )](); 218 } 219 220 // æðÏX 221 if( typeof( eoPngFilter ) == 'object' && eoPngFilter.GetUseFlg( document.getElementById( this.getAttribute('tgt_id') ) ) ) 222 { // IEpPNGtB^ªKp³êÄ¢éê 223 eoPngFilter.SetAlphaImageLoader( document.getElementById( this.getAttribute('tgt_id') ), this.getAttribute( 'src_on' ) ); 224 } 225 else 226 { // ÊíÌæÌê 227 document.getElementById( this.getAttribute('tgt_id') ).setAttribute( 'src', this.getAttribute( 'src_on' ) ); 228 } 229 } 230 aAreaList[k].onmouseout = function() 231 { 232 // XgbNCxgðÀs 233 if( eoRollOver.aEventMouseOut[this.getAttribute( 'eventstock_no' )] ) 234 { 235 eoRollOver.aEventMouseOut[this.getAttribute( 'eventstock_no' )](); 236 } 237 238 // æðÏX 239 if( typeof( eoPngFilter ) == 'object' && eoPngFilter.GetUseFlg( document.getElementById( this.getAttribute('tgt_id') ) ) ) 240 { // IEpPNGtB^ªKp³êÄ¢éê 241 eoPngFilter.SetAlphaImageLoader( document.getElementById( this.getAttribute('tgt_id') ), this.getAttribute( 'src_off' ) ); 242 } 243 else 244 { // ÊíÌæÌê 245 document.getElementById( this.getAttribute('tgt_id') ).setAttribute( 'src', this.getAttribute( 'src_off' ) ); 246 } 247 } 248 } 249 } 250 } 251 }; 252 253 //___________________________________________________________________________ 254 // ù¶CxgÌXgbN 255 this._StockEvent = function( objTgt ) 256 { 257 // ù¶CxgðXgbN 258 this.aEventMouseOver[this.aEventMouseOver.length] = objTgt.onmouseover; 259 this.aEventMouseOut[this.aEventMouseOut.length] = objTgt.onmouseout; 260 261 // XgbNÔðAgr [gÉZbg 262 objTgt.setAttribute( 'eventstock_no', this.aEventMouseOver.length-1 ); 263 }; 264 265 //___________________________________________________________________________ 266 // æÌv[h 267 this._PreLoad = function( vSrc ) 268 { 269 this.aPreLoad[this.aPreLoad.length] = new Image(); 270 this.aPreLoad[this.aPreLoad.length-1].src = vSrc; 271 }; 272 273 //___________________________________________________________________________ 274 // gptOðZbg 275 this.SetUseFlg = function( objEle ) 276 { 277 objEle.setAttribute( 'rollover', 1 ); 278 }; 279 280 //___________________________________________________________________________ 281 // gptOðæ¾ 282 this.GetUseFlg = function( objEle ) 283 { 284 return objEle.getAttribute( 'rollover' ); 285 }; 286} 287 288 289 290 291//_______________________________________________________________________________ 292// window.onloadÉZbg 293window.onload = function() 294{ 295 // [I[o[ú» 296 eoRollOver.Init(); 297} 298 299 300 301
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.