PageSourceSearch

https://kokusai.shimane-u.ac.jp/_themes/repl/set_rollover.js

js shimane-u.ac.jp collected 2026-10-01 10:21:10 UTC 9,203 bytes, 301 lines download raw bytes

1/********************************************************************************
2
3	ƒ[ƒ‹ƒI[ƒo[ƒZƒbƒ^[
4		ì¬ŽÒ	Masashi Kikkawa
5
6	yà–¾z
7		img—v‘f‚à‚µ‚­‚Íinputitype=imagej—v‘f‚Ìclass‘®«‚Ɂurolloverv‚ð“ü‚ê‚邯
8		ƒ}ƒEƒXƒI[ƒo[Žž‚ÉŒ³‚̃tƒ@ƒCƒ‹–¼‚Ɂu_onv‚ð•t‚¯‚½ƒtƒ@ƒCƒ‹‚Å’u‚«Š·‚¦‚éB
9		ƒNƒŠƒbƒJƒuƒ‹ƒ}ƒbƒv‚ðŽg—p‚·‚éê‡‚Í•K‚¸img—v‘f‚Éid‘®«‚ðŽw’è‚·‚邱‚ƁB
10		’u‚«Š·‚¦‚鉿‘œ‚Íarea—v‘f‚Ì‹Lq‡‚Ɂu_on1A_on2Acv‚Æ‚·‚éB
11
12	yXV—š—ðz
13		2008.07.03 v.1.07
14			v1.05‚̉ü—ǂŁAMacIE‚Å“®ì‚µ‚È‚­‚È‚Á‚Ä‚¢‚½ƒoƒO‚ðC³B
15		2008.05.17 v.1.06
16			IE—pPNGƒtƒBƒ‹ƒ^ƒZƒbƒ^[‚Ƃ̘A“®‚ɑΉžB
17		2008.05.15 v.1.05
18			•¡”‚̃Nƒ‰ƒXŽw’è‚ɑΉžB
19		2007.12.18 v.1.04
20			Šù‘¶ƒCƒxƒ“ƒg‚ðŽÀs‚µ‚Ä‚©‚烍[ƒ‹ƒI[ƒo[‚·‚邿‚¤‚ɏ‡˜‚ð•ύXB
21		2007.12.13 v.1.03
22			Šù‘¶‚ÌonmouseoverAonmouseoutƒCƒxƒ“ƒg‚ðƒXƒgƒbƒNAŽÀs‚·‚邿‚¤‚ɉü—ǁB
23		2007.09.26 v.1.02
24			v.1.01‚̉ü—ǂŁAMacIE‚Å“®ì‚µ‚È‚­‚È‚Á‚Ä‚¢‚½ƒoƒO‚ðC³B
25		2007.08.04 v.1.01
26			input—v‘f‚̃^ƒCƒv‚ªimage‚Ì‚à‚̂ɑΉžB
27			ƒ\[ƒX‚ð‘S–ʏ‘‚«’¼‚µ
28		2007.06.16 v.1.00
29			ŒöŠJB
30
31********************************************************************************/
32
33
34
35//_______________________________________________________________________________
36//	ƒ[ƒ‹ƒI[ƒo[
37var	eoRollOver	=	new class_eoRollOver();
38function	class_eoRollOver()
39{
40	this.objOnload	=	window.onload;	//	Šù‘¶‚ÌonloadƒCƒxƒ“ƒg
41
42	this.aEventMouseOver	=	[];	//	Šù‘¶‚̉摜‚ÌonmouseoverƒCƒxƒ“ƒgƒXƒgƒbƒN
43	this.aEventMouseOut		=	[];	//	Šù‘¶‚̉摜‚ÌonmouseoutƒCƒxƒ“ƒgƒXƒgƒbƒN
44
45	this.aPreLoad	=	[];	//	ƒvƒŠƒ[ƒh—p
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		//	Šù‘¶‚ÌonLoadƒCƒxƒ“ƒg‚ðŽÀs
56		if( this.objOnload != null )	this.objOnload();
57
58		//	‘Ήžƒ`ƒFƒbƒN
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			//	ƒ^ƒCƒv‚ƃNƒ‰ƒX–¼”»’è
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			//	ƒNƒ‰ƒX–¼”»’è
80			if( /(^|\s)rollover(\s|$)/.test( aImgList[i].className ) )
81			{
82				aImgStock[aImgStock.length]	=	aImgList[i];
83			}
84		}
85
86		//	ƒCƒxƒ“ƒgƒZƒbƒg
87		for( var i=0; i<aImgStock.length; i++ )
88		{
89			//	Žg—pƒtƒ‰ƒO‚ðƒZƒbƒg
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			{	//	IE—pPNGƒtƒBƒ‹ƒ^‚ª“K—p‚³‚ê‚Ä‚¢‚éê‡
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			//	ƒNƒŠƒbƒJƒuƒ‹”»’è
108			if( !aImgStock[i].useMap )
109			{	//	’ʏí‚̉摜‚̏ꍇ
110				this._InitImage( aImgStock[i], vImgName, vImgEx );
111			}
112			else
113			{	//	ƒNƒŠƒbƒJƒuƒ‹ƒ}ƒbƒv‚̏ꍇ
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		//	Šù‘¶ƒCƒxƒ“ƒg‚̃XƒgƒbƒN
126		this._StockEvent( objImg );
127
128		//	ƒAƒgƒŠƒrƒ…[ƒg‚ɃZƒbƒg
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		//	ƒCƒxƒ“ƒgÝ’è
136		objImg.onmouseover	=	function()
137		{
138			//	ƒXƒgƒbƒNƒCƒxƒ“ƒg‚ðŽÀ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			{	//	IE—pPNGƒtƒBƒ‹ƒ^‚ª“K—p‚³‚ê‚Ä‚¢‚éê‡
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			//	ƒXƒgƒbƒNƒCƒxƒ“ƒg‚ðŽÀ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			{	//	IE—pPNGƒtƒBƒ‹ƒ^‚ª“K—p‚³‚ê‚Ä‚¢‚éê‡
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	//	ƒNƒŠƒbƒJƒuƒ‹ƒ}ƒbƒv‰Šú‰»
176	this._InitMap	=	function( objImg, vImgName, vImgEx )
177	{
178		var	aMapList;
179		var	aAreaList;
180		var	vPreLoad;
181
182		//	IDƒZƒbƒg”»’è
183		if( !objImg.id )
184		{	//	ƒGƒ‰[
185			alert( 'Ÿƒ[ƒ‹ƒI[ƒo[ƒZƒbƒ^[ ƒGƒ‰[Ÿ\nƒNƒŠƒbƒJƒuƒ‹ƒ}ƒbƒv‚ðŽ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			//	‘Ώۃ}ƒbƒv”»’è
194			if( '#' + aMapList[j].name == objImg.useMap )
195			{
196				//	Žg—p‚µ‚Ä‚¢‚émap‚Ìareaˆê——‚ðŽæ“¾‚µ‚ÄŒŸõ
197				aAreaList	=	aMapList[j].getElementsByTagName( 'area' );
198				for( var k=0; k<aAreaList.length; k++ )
199				{
200					//	Šù‘¶ƒCƒxƒ“ƒg‚̃XƒgƒbƒN
201					this._StockEvent( aAreaList[k] );
202
203					//	ƒAƒgƒŠƒrƒ…[ƒg‚ɃZƒbƒg
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					//	ƒCƒxƒ“ƒgÝ’è
212					aAreaList[k].onmouseover	=	function()
213					{
214						//	ƒXƒgƒbƒNƒCƒxƒ“ƒg‚ðŽÀ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						{	//	IE—pPNGƒtƒBƒ‹ƒ^‚ª“K—p‚³‚ê‚Ä‚¢‚éê‡
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						//	ƒXƒgƒbƒNƒCƒxƒ“ƒg‚ðŽÀ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						{	//	IE—pPNGƒtƒBƒ‹ƒ^‚ª“K—p‚³‚ê‚Ä‚¢‚éê‡
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	//	Šù‘¶ƒCƒxƒ“ƒg‚̃XƒgƒbƒN
255	this._StockEvent	=	function( objTgt )
256	{
257		//	Šù‘¶ƒCƒxƒ“ƒg‚ðƒXƒgƒbƒN
258		this.aEventMouseOver[this.aEventMouseOver.length]	=	objTgt.onmouseover;
259		this.aEventMouseOut[this.aEventMouseOut.length]		=	objTgt.onmouseout;
260
261		//	ƒXƒgƒbƒN”ԍ†‚ðƒAƒgƒŠƒrƒ…[ƒg‚ɃZƒbƒg
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	//	Žg—pƒtƒ‰ƒO‚ðƒZƒbƒg
275	this.SetUseFlg	=	function( objEle )
276	{
277		objEle.setAttribute( 'rollover', 1 );
278	};
279
280	//___________________________________________________________________________
281	//	Žg—pƒtƒ‰ƒO‚ðŽæ“¾
282	this.GetUseFlg	=	function( objEle )
283	{
284		return	objEle.getAttribute( 'rollover' );
285	};
286}
287
288
289
290
291//_______________________________________________________________________________
292//	window.onload‚ɃZƒbƒg
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.