1(function($) { 2 3 $.fn.innerfade = function(options) { 4 return this.each(function() { 5 $.innerfade(this, options); 6 }); 7 }; 8 9 $.innerfade = function(container, options) { 10 var settings = { 11 'animationtype': 'fade', 12 'speed': 'normal', 13 'type': 'sequence', 14 'timeout': 2000, 15 'children': null 16 }; 17 if (options) 18 $.extend(settings, options); 19 if (settings.children === null) 20 var elements = $(container).children(); 21 else 22 var elements = $(container).children(settings.children); 23 if (elements.length > 1) { 24 $(container).css('position', 'relative').css('height', settings.containerheight).addClass(settings.runningclass); 25 for (var i = 0; i < elements.length; i++) { 26 $(elements[i]).css('z-index', String(elements.length-i)).css('position', 'absolute').hide(); 27 }; 28 if (settings.type == "sequence") { 29 setTimeout(function() { 30 $.innerfade.next(elements, settings, 1, 0); 31 }, settings.timeout); 32 $(elements[0]).show(); 33 } else if (settings.type == "random") { 34 var last = Math.floor ( Math.random () * ( elements.length ) ); 35 setTimeout(function() { 36 do { 37 current = Math.floor ( Math.random 38 39( ) * ( elements.length ) ); 40 } while (last == current ); 41 $.innerfade.next(elements, settings, current, last); 42 }, settings.timeout); 43 $(elements[last]).show(); 44 } else if ( settings.type == 'random_start' ) { 45 settings.type = 'sequence'; 46 var current = Math.floor ( Math.random () * ( elements.length ) ); 47 setTimeout(function(){ 48 $.innerfade.next(elements, settings, (current + 1) % 49 50elements.length, current); 51 }, settings.timeout); 52 $(elements[current]).show(); 53 } else { 54 alert('Innerfade-Type must either be \'sequence\', \'random\' or \'random_start\''); 55 } 56 } 57 }; 58 59 $.innerfade.next = function(elements, settings, current, last) { 60 if (settings.animationtype == 'slide') { 61 $(elements[last]).slideUp(settings.speed); 62 $(elements[current]).slideDown(settings.speed); 63 } else if (settings.animationtype == 'fade') { 64 $(elements[last]).fadeOut(settings.speed); 65 $(elements[current]).fadeIn(settings.speed, function() { 66 removeFilter($(this)[0]); 67 }); 68 } else 69 alert('Innerfade-animationtype must either be \'slide\' or \'fade\''); 70 if (settings.type == "sequence") { 71 if ((current + 1) < elements.length) { 72 current = current + 1; 73 last = current - 1; 74 } else { 75 current = 0; 76 last = elements.length - 1; 77 } 78 } else if (settings.type == "random") { 79 last = current; 80 while (current == last) 81 current = Math.floor(Math.random() * elements.length); 82 } else 83 alert('Innerfade-Type must either be \'sequence\', \'random\' or \'random_start\''); 84 setTimeout((function() { 85 $.innerfade.next(elements, settings, current, last); 86 }), settings.timeout); 87 }; 88 89})(jQuery); 90 91// **** remove Opacity-Filter in ie **** 92function removeFilter(element) { 93 if(element.style.removeAttribute){ 94 element.style.removeAttribute('filter'); 95 } 96}
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.