1/* -------------------------------------------------------------------------- 2 last update: 09/06/16 3 created by edo. 4 5 This script attach the rollover effect to image on 'rollover' class. 6 This is distributed by the MIT license. 7 8 URL: http://css-eblog.com/ 9----------------------------------------------------------------------------- */ 10 11(function() { 12var filename = 'rollover.js'; 13var _className = 'rollover'; 14 15function getJsParam() { 16 //get scripts list. 17 var scripts = document.getElementsByTagName( 'script' ); 18 var script; 19 var params = {}; 20 21 //pickup this file. 22 for ( var i=0; i<scripts.length; i++ ) { 23 var s = scripts.item( i ); 24 if( s.src.indexOf( filename ) !== -1 ) { 25 script = s; 26 break; 27 } 28 } 29 30 if( script ) { 31 script.src.match( /(.*)(\?)(.*)/ ); 32 if( RegExp.$3 ) { 33 var a = RegExp.$3.split( '&' ); 34 if( a ) { 35 for( var k=0; k<a.length; k++ ) { 36 var p = a[ k ].split( '=' ); 37 if( p[0] ) { 38 params[ p[0] ] = p[1]; 39 } 40 } 41 } else { 42 return false; 43 } 44 } else { 45 return false; 46 } 47 } else { 48 return false; 49 } 50 51 return params; 52} 53 54function addEvent( node, evt, handler ) { 55 try { 56 if( node.addEventListener ) { 57 node.addEventListener( evt, handler, false ); 58 } else { 59 node.attachEvent( 'on' + evt, handler ); 60 } 61 } catch( e ) {} 62} 63 64function setEvent( ele, ty ) { 65 ele.originalSrc = ele.src; 66 ele.originalSrc.match( /^(.*)(\.{1}.*)/g ); 67 ele.hoverSrc = RegExp.$1 + ty + RegExp.$2; 68 addEvent( ele, 'mouseover', function( evt ) { 69 var tar = evt.target || evt.srcElement; 70 tar.src = tar.hoverSrc; 71 }); 72 addEvent( ele, 'mouseout', function( evt ) { 73 var tar = evt.target || evt.srcElement; 74 tar.src = tar.originalSrc; 75 }); 76} 77 78function startRollover() { 79 var jParam = getJsParam(); 80 var jType = jParam.type ? jParam.type : '_on'; 81 var imgs = document.getElementsByTagName( 'img' ); 82 for( var i=0; i<imgs.length; i++ ) { 83 if( imgs[i].className.indexOf( _className ) !== -1 ) { 84 setEvent( imgs[i], jType ); 85 } 86 } 87} 88 89addEvent( window, 'load', startRollover ); 90})();
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.