1jQuery.fn.fadeSlideShow = function (options) { 2 return this.each(function () { 3 settings = jQuery.extend({ width: 640, height: 800, speed: 4000, interval: 8000, PlayPauseElement: !1, PlayText: 'Play', PauseText: 'Pause', NextElement: !1, NextElementText: 'Next >', PrevElement: !1, PrevElementText: '< Prev', ListElement: !1, ListLi: 'fssLi', ListLiActive: 'fssActive', addListToId: !1, allowKeyboardCtrl: !0, autoplay: !0 }, options); jQuery(this).css({ width: settings.width, height: settings.height, position: 'relative', overflow: 'hidden' }); jQuery('> *', this).css({ position: 'absolute', width: settings.width, height: settings.height }); Slides = jQuery('> *', this).length; Slides = Slides - 1; ActSlide = 0; jQslide = jQuery('> *', this); fssThis = this; autoplay = function () { 4 jQslide.eq(ActSlide).hide(); jQslide.eq(ActSlide).fadeIn(settings.speed); intval = setInterval(function () { 5 jQslide.eq(ActSlide).fadeOut(settings.speed); if (settings.ListElement) { 6 setA
6ctLi = ActSlide + 1; if (setActLi > Slides) { setActLi = 0 } 7 jQuery('#' + settings.ListElement + ' li').removeClass(settings.ListLiActive); jQuery('#' + settings.ListElement + ' li').eq(setActLi).addClass(settings.ListLiActive) 8 } 9 if (ActSlide == Slides) { ActSlide = 0; jQslide.eq(ActSlide).fadeIn(settings.speed) } 10 else { ActSlide += 1; jQslide.eq(ActSlide).fadeIn(settings.speed) } 11 }, settings.interval); if (settings.PlayPauseElement) { jQuery('#' + settings.PlayPauseElement).html(settings.PauseText) } 12 } 13 stopAutoplay = function () { clearInterval(intval); intval = !1; if (settings.PlayPauseElement) { jQuery('#' + settings.PlayPauseElement).html(settings.PlayText) } } 14 jumpTo = function (newIndex) { 15 if (newIndex < 0) { newIndex = Slides } 16 else if (newIndex > Slides) { newIndex = 0 } 17 if (newIndex >= ActSlide) { jQuery('> *:lt(' + (newIndex + 1) + ')', fssThis).fadeIn(settings.speed) } else if (newIndex <= ActSlide) { jQuery('> *:gt(' + newIndex + ')', fssThis).fadeOut(settings.speed) } 18 ActSlide = newIndex; if (settings.ListElement) { jQuery('#' + settings.ListElement + ' li').removeClass(settings.ListLiActive); jQuery('#' + settings.ListElement + ' li').eq((newIndex)).addClass(settings.ListLiActive) } 19 } 20 if (settings.ListElement) { 21 i = 0; li = ''; while (i <= Slides) { 22 if (i == 0) { li = li + '<li class="' + settings.ListLi + i + ' ' + settings.ListLiActive + '"><a href="#">' + (i + 1) + '<\/a><\/li>' } else { li = li + '<li class="' + settings.ListLi + i + '"><a href="#">' + (i + 1) + '<\/a><\/li>' } 23 i++ 24 } 25 List = '<ul id="' + settings.ListElement + '">' + li + '<\/ul>'; if (settings.addListToId) { jQuery('#' + settings.addListToId).append(List) } else { jQuery(this).after(List) } 26 jQuery('#' + settings.ListElement + ' a').bind('click', function () { index = jQuery('#' + settings.ListElement + ' a').index(this); stopAutoplay(); jumpTo(index); return !1 }) 27 } 28 if (settings.PlayPauseElement) { 29 if (!jQuery('#' + settings.PlayPauseElement).css('display')) { jQuery(this).after('<a href="#" id="' + settings.PlayPauseElement + '"><\/a>') } 30 if (settings.autoplay) { jQuery('#' + settings.PlayPauseElement).html(settings.PauseText) } else { jQuery('#' + settings.PlayPauseElement).html(settings.PlayText) } 31 jQuery('#' + settings.PlayPauseElement).bind('click', function () { 32 if (intval) { stopAutoplay() } else { autoplay() } 33 return !1 34 }) 35 } 36 if (settings.NextElement) { 37 if (!jQuery('#' + settings.NextElement).css('display')) { jQuery(this).after('<a href="#" id="' + settings.NextElement + '">' + settings.NextElementText + '<\/a>') } 38 jQuery('#' + settings.NextElement).bind('click', function () { nextSlide = ActSlide + 1; stopAutoplay(); jumpTo(nextSlide); return !1 }) 39 } 40 if (settings.PrevElement) { 41 if (!jQuery('#' + settings.PrevElement).css('display')) { jQuery(this).after('<a href="#" id="' + settings.PrevElement + '">' + settings.PrevElementText + '<\/a>') } 42 jQuery('#' + settings.PrevElement).bind('click', function () { prevSlide = ActSlide - 1; stopAutoplay(); jumpTo(prevSlide); return !1 }) 43 } 44 if (settings.allowKeyboardCtrl) { jQuery(document).bind('keydown', function (e) { if (e.which == 39) { nextSlide = ActSlide + 1; stopAutoplay(); jumpTo(nextSlide) } else if (e.which == 37) { prevSlide = ActSlide - 1; stopAutoplay(); jumpTo(prevSlide) } }) } 45 if (settings.autoplay) { autoplay() } else { intval = !1 } 46 }) 47}
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.