1// JavaScript Document 2 3/** 4 * @Authors: MiB 5 * @Version: 1.0.3 6 * @Date: 2011-05-26 7 * @Copyright: RAGBIT GmbH - All rights reserved. 8 * 9 * changed to only use setAlpha() 10 * 11 * v1.0.2 12 * fadeDisplay, first set opacity 13**/ 14 15function shaderClass () { 16 var timeContainer = new Array(); 17 var rubbish; 18 19 this.alphaBlend = function (fadeObject, fromAlpha, toAlpha, microseconds, killElement) { 20 if (fadeObject === null) return null; 21 if (typeof fadeObject != 'object') var fadeObject = document.getElementById(fadeObject); 22 if (fromAlpha === null) fromAlpha = 0; 23 if (toAlpha === null) toAlpha = 1; 24 if (!microseconds) microseconds = 2000; 25 if (killElement === null) killElement = true; 26 27 if (timeContainer[fadeObject.id]) { 28 for (var key in timeContainer[fadeObject.id]) { 29 window.clearTimeout(timeContainer[fadeObject.id][key]); 30 } 31 } else timeContainer[fadeObject.id] = new Object(); 32 33 var currentAlpha = fromAlpha; 34 var fps = 24; 35 var imageTime = 1000/fps; 36 var stepNum = microseconds/imageTime; 37 var stepMax = stepNum + (microseconds/100); 38 var currentStep = 0; 39 var iteration = parseFloat((toAlpha-fromAlpha)/stepNum); 40 var setAlpha; 41 var timeIndex; 42 43 var isIE = document.all ? true : false; 44 45 //alert(isIE); 46 47 while (currentStep <= stepMax && (currentAlpha <= toAlpha && fromAlpha < toAlpha || currentAlpha >= toAlpha && fromAlpha > toAlpha)) { 48 currentStep = currentStep +1; 49 currentAlpha = fromAlpha + (iteration * currentStep); 50 if (fromAlpha < toAlpha && currentAlpha >= toAlpha || fromAlpha > toAlpha && currentAlpha <= toAlpha) currentAlpha = toAlpha; 51 if (currentAlpha < 0) currentAlpha = 0.0; 52 if (currentAlpha > 1) currentAlpha = 1.0; 53 setAlpha = Math.round(currentAlpha*100)/100; 54 timeIndex = Math.round(imageTime * currentStep); 55 56 timeContainer[fadeObject.id][timeIndex] = window.setTimeout ( 57 (function (fadeObject, setAlpha, timeIndex) { 58 return function() { 59 shaderObj.setAlpha(fadeObject, setAlpha); 60 }; 61 })(fadeObject, setAlpha, timeIndex), timeIndex 62 ); 63 if (currentAlpha == toAlpha) break; 64 }; 65 66 if (killElement) { 67 timeContainer[fadeObject.id]['killElement'] = window.setTimeout ( 68 function () { 69 fadeObject.parentNode.removeChild(fadeObject); 70 }, timeIndex 71 ); 72 }; 73 }; 74 75 this.setAlpha = function (setObject, setAlpha) { 76 var isIE = document.all ? true : false; 77 if (!isIE) setObject.style.opacity = setAlpha; 78 else { 79 setObject.style.filter = 'Alpha(opacity='+(Math.round(setAlpha*100))+')'; 80 setObject.style.backgroundColor = setObject.style.backgroundColor; 81 // on Error: return to = 'white'; 82 } 83 }; 84 85 this.fadeDisplay = function (fadeObject, toDisplay, fromAlpha, toAlpha, microseconds) { 86 // using this.alphaBlend(fadeObject, fromAlpha, toAlpha, microseconds, killElement) 87 if (fadeObject === null) return null; 88 if (typeof fadeObject != 'object') { 89 var fadeObject = document.getElementById(fadeObject); 90 if (typeof fadeObject != 'object' || fadeObject === null) return null; 91 } 92 93 if (!toDisplay) toDisplay = fadeObject.style.display == 'none' ? 'block' : 'none'; 94 if (!microseconds) microseconds = 250; 95 96 if (toDisplay == 'none') { // fade out: 1. set alpha, 2. fade, 3. set display 97 if (fromAlpha === null || typeof fromAlpha == 'undefined') fromAlpha = 1; 98 if (toAlpha === null || typeof toAlpha == 'undefined') toAlpha = 0; 99 this.setAlpha(fadeObject, fromAlpha); 100 setTimeout ( 101 function () { 102 fadeObject.style.display = toDisplay; 103 }, microseconds 104 ); 105 } else { // fade in: 1. set alpha, 2. set display, 3. fade 106 if (fromAlpha === null || typeof fromAlpha == 'undefined') fromAlpha = 0; 107 if (toAlpha === null || typeof toAlpha == 'undefined') toAlpha = 1; 108 this.setAlpha(fadeObject, fromAlpha); 109 fadeObject.style.display = toDisplay; 110 } 111 this.alphaBlend(fadeObject, fromAlpha, toAlpha, microseconds, false); 112 } 113 114 this.fadeTextColor = function (containerObject, fromColor, toColor, killElement, microseconds, step, iterationRed, iterationGreen, iterationBlue) { 115 if (typeof containerObject != 'object') var containerObject = document.getElementById(containerObject); 116 117 if (!fromColor) fromColor = '000000'; 118 if (!toColor) toColor = 'ffffff'; 119 if (killElement === null || typeof killElement == 'undefined') killElement = true; 120 if (!microseconds) microseconds = 1000; 121 if (!step) step = 0; 122 step = step+1; 123 124 fps = 24; 125 var imageTime = Math.round(1000/fps); 126 127 var fromIntColorRed = parseInt(fromColor.substring(0,2),16); 128 var fromIntColorGreen = parseInt(fromColor.substring(2,4),16); 129 var fromIntColorBlue = parseInt(fromColor.substring(4,6),16); 130 131 var toIntColorRed = parseInt(toColor.substring(0,2),16); 132 var toIntColorGreen = parseInt(toColor.substring(2,4),16); 133 var toIntColorBlue = parseInt(toColor.substring(4,6),16); 134 135 var stepNum = Math.round(microseconds/imageTime); 136 137 if (!iterationRed) iterationRed = Math.round((toIntColorRed-fromIntColorRed)/stepNum); 138 if (!iterationGreen) iterationGreen = Math.round((toIntColorGreen-fromIntColorGreen)/stepNum); 139 if (!iterationBlue) iterationBlue = Math.round((toIntColorBlue-fromIntColorBlue)/stepNum); 140 141 var newIntColorRed = fromIntColorRed + iterationRed; 142 if (newIntColorRed < 0) newIntColorRed = 0; 143 if (newIntColorRed > 255) newIntColorRed = 255; 144 var newIntColorGreen = fromIntColorGreen + iterationGreen; 145 if (newIntColorGreen < 0) newIntColorGreen = 0; 146 if (newIntColorGreen > 255) newIntColorGreen = 255; 147 var newIntColorBlue = fromIntColorBlue + iterationBlue; 148 if (newIntColorBlue < 0) newIntColorBlue = 0; 149 if (newIntColorBlue > 255) newIntColorBlue = 255; 150 151 var newHexColorRed = newIntColorRed.toString(16); 152 if (newHexColorRed.length <2) newHexColorRed = '0'+newHexColorRed; 153 var newHexColorGreen = newIntColorGreen.toString(16); 154 if (newHexColorGreen.length <2) newHexColorGreen = '0'+newHexColorGreen; 155 var newHexColorBlue = newIntColorBlue.toString(16); 156 if (newHexColorBlue.length <2) newHexColorBlue = '0'+newHexColorBlue; 157 158 var changeColor = newHexColorRed+''+newHexColorGreen+''+newHexColorBlue; 159 160 //alert (stepNum+','+iterationRed+','+fromIntColorRed+','+toIntColorRed+','+(fromIntColorRed-toIntColorRed)+','+Math.abs((fromIntColorRed-toIntColorRed)/stepNum)+','+changeColor); 161 162 if (step<stepNum && changeColor.length == 6) { 163 containerObject.style.color = '#'+changeColor; 164 setTimeout( 165 function () { 166 shaderObj.fadeTextColor(containerObject, changeColor, toColor, killElement, microseconds, step, iterationRed, iterationGreen, iterationBlue); 167 }, imageTime 168 ); 169 } else {
170 containerObject.style.color = '#'+toColor; 171 if (killElement) { 172 containerObject.parentNode.removeChild(containerObject); 173 } 174 } 175 return true; 176 }; 177 178 this.outOfShape = function (element, event) { 179 var current_mouse_target = null; 180 current_mouse_target = event.toElement || event.relatedTarget; 181 //alert(element+' : '+current_mouse_target); 182 if( current_mouse_target != null && element != current_mouse_target ) { 183 while( current_mouse_target.parentNode ) { 184 if( (current_mouse_target = current_mouse_target.parentNode) == element ) { 185 return false; 186 } 187 } 188 } 189 return true; 190 } 191} 192var shaderObj = new shaderClass ();
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.