17. februar 2008 - 11:16Der er
7 kommentarer og 1 løsning
ASP slideshow søges
jeg har fundet dette: http://www.asp.net/AJAX/AjaxControlToolkit/Samples/SlideShow/SlideShow.aspx men det er .NET og det kan jeg ikke bruge - selve måden slidehowet kører på er hvad jeg er ude efter. Et asp script der henter jpegs fra en mappe og viser dem i en tabel <td> f.eks 5 jpegs der skifter hvert 5. sekund
// Starts content rotation for the given rotator instance function rcr_Start(rotator) { if (rotator.RotationType == 'ContentScroll') { scroll_Init(rotator); scroll_ShowNextSlide(rotator); } else { ss_ShowNextSlide(rotator); } }
// Continues content rotation after it was stopped function rcr_Play(rotator) { if (!rotator.Stopped) return null; rotator.Stopped = false;
if (!rotator.Ticking) { if (rotator.RotationType == 'SlideShow') { ss_Play(rotator); } else { scroll_Play(rotator); } } }
// Stops content rotation for the given rotator instance function rcr_Stop(rotator) { if (rotator.Stopped) return null; rotator.Stopped = true; window.clearTimeout(rotator.NextSlideTimeoutID); window.clearTimeout(rotator.HideTimeoutID); if (rotator.SlidePause == 0) window.clearInterval(rotator.ScrollIntervalID); if (rotator.RotationType == 'SlideShow') { var Container = document.getElementById(rotator.ContainerID); Container.style.visibility = 'visible'; } }
// Sets the index of the next slide function rcr_SetNextSlideIndex(rotator) { if (rotator.CurrentSlide == -1) rotator.CurrentSlide = 0; else if (rotator.CurrentSlide == rotator.Slides.length - 1) { rotator.CurrentSlide = 0; rotator.FirstTimeAround = false; } else rotator.CurrentSlide ++; }
// Initializes slide content function scroll_Init(rotator) { var Container = document.getElementById(rotator.ContainerID); var RotatorElement = document.getElementById(rotator.ElementID); var startTop; var startLeft;
// Continues rotation when RotationType == 'ContentScroll' function scroll_Play(rotator) { if (rotator.ScrollIntervalID == 0) { scroll_ShowNextSlide(rotator); } else if (rotator.SlidePause == 0) { var functionParam = 'scroll_NextSlideToView(' + rotator.GlobalID + ')'; rotator.ScrollIntervalID = window.setInterval(functionParam, rotator.ScrollInterval); } }
// Shows the next slide when RotationType == 'ContentScroll' function scroll_ShowNextSlide(rotator) { rcr_SetNextSlideIndex(rotator); if (!rotator.Loop && !rotator.FirstTimeAround) { rcr_Stop(rotator); return null; }
// så rotationen stopper når musen holdes over // Moves the current slide by the number of pixels specified in rotator.ScrollStep function scroll_NextSlideToView(rotator) { if(!rotator.Stopped){ // tilføjet var Container = document.getElementById(rotator.ContainerID); var CurSlide = document.getElementById(rotator.Slides[rotator.CurrentSlide]); var newTop = parseInt(Container.style.top.replace('px', '')); var newLeft = parseInt(Container.style.left.replace('px', ''));
// Move the slide container switch (rotator.ScrollDirection) { case 'up': newTop -= rotator.ScrollStep; break;
// Figure out the slide threshold var newTopThreshold = 0; var newLeftThreshold = 0; var prevSlide = document.getElementById(rotator.Slides[scroll_PreviousSlideIndex(rotator)]); if (!(rotator.FirstTimeAround && rotator.CurrentSlide == 0)) { newTopThreshold = prevSlide.offsetHeight; newLeftThreshold = prevSlide.offsetWidth; }
// Stop to show the slide or run tickers, if required if ((newTop + newTopThreshold == 0 && rotator.ScrollDirection == 'up') || (newLeft + newLeftThreshold == 0 && rotator.ScrollDirection == 'left')) { window.clearInterval(rotator.ScrollIntervalID); rotator.ScrollIntervalID = 0; if (!(rotator.FirstTimeAround && rotator.CurrentSlide == 0)) scroll_SwapPreviousSlide(rotator);
if (rotator.HasTickers) { rcr_StartTickerSequence(rotator); } else { var functionParam = 'scroll_ShowNextSlide(' + rotator.GlobalID + ')'; if (!rotator.Stopped) rotator.NextSlideTimeoutID = window.setTimeout(functionParam, rotator.SlidePause); } } } // tilføjet }
// Removes the previous slide from the content tree, then recreates it at the end function scroll_SwapPreviousSlide(rotator) { var Container = document.getElementById(rotator.ContainerID); if (rotator.ScrollDirection == 'up') { var prevSlide = document.getElementById(rotator.Slides[scroll_PreviousSlideIndex(rotator)]); var prevSlideCopy = prevSlide.cloneNode(true); Container.removeChild(prevSlide); Container.style.top = '0px'; Container.appendChild(prevSlideCopy); rcr_ResetTickers(rotator); } else { var cRow = document.getElementById(rotator.ContainerRowID); var prevSlideCell = cRow.cells[0]; var a = cRow.removeChild(prevSlideCell); Container.style.left = '0px'; var b = cRow.appendChild(a); } }
// Returns the index of the previous slide function scroll_PreviousSlideIndex(rotator) { if (rotator.CurrentSlide == 0) return rotator.Slides.length - 1; else return rotator.CurrentSlide - 1; }
// Shows the next slide when RotationType == 'SlideShow' function ss_ShowNextSlide(rotator) { if (rotator.Stopped) return null; rcr_SetNextSlideIndex(rotator);
// Setup slide content var Container = document.getElementById(rotator.ContainerID); var CurSlide = document.getElementById(rotator.Slides[rotator.CurrentSlide]); Container.innerHTML = CurSlide.innerHTML; CurSlide.innerHTML = ''; rcr_ResetTickers(rotator);
ss_PlayShowEffect(rotator);
if (rotator.HasTickers) { // Set timeout for displaying the slide var functionParam = 'rcr_StartTickerSequence(' + rotator.GlobalID + ')'; var timerID = window.setTimeout(functionParam, rotator.ShowEffectDuration); } else { // Set timeout for displaying the slide var functionParam = 'ss_DisplaySlide(' + rotator.GlobalID + ')'; rotator.NextSlideTimeoutID = window.setTimeout(functionParam, rotator.ShowEffectDuration); } }
// Displays current slide when RotationType == 'ContentScroll' function ss_DisplaySlide(rotator) { if (rotator.Stopped) return null;
// Set timeout for hiding the slide var functionParam = 'ss_PlayHideEffect(' + rotator.GlobalID + ')'; rotator.HideTimeoutID = window.setTimeout(functionParam, rotator.SlidePause);
// Set timeout for ss_ShowNextSlide var delay = 0; if (rotator.HideEffect) delay += rotator.HideEffectDuration; delay += rotator.SlidePause; functionParam = 'ss_ShowNextSlide(' + rotator.GlobalID + ')'; rotator.NextSlideTimeoutID = window.setTimeout(functionParam, delay); }
// Plays show effect when RotationType == 'ContentScroll' function ss_PlayShowEffect(rotator) { var Container = document.getElementById(rotator.ContainerID);
if (Container.filters && rotator.ShowEffect) Container.filters[0].play(); }
// Plays hide effect when RotationType == 'ContentScroll' function ss_PlayHideEffect(rotator) { var Container = document.getElementById(rotator.ContainerID);
if (Container.filters && rotator.HideEffect) { Container.style.filter = rotator.HideEffect; Container.filters[0].apply(); } // Reset slide content var CurSlide = document.getElementById(rotator.Slides[rotator.CurrentSlide]); CurSlide.innerHTML = Container.innerHTML; Container.style.visibility = 'hidden'; if (Container.filters && rotator.HideEffect) Container.filters[0].play(); }
// Starts the ticker sequence for the current slide of the given rotator instance function rcr_StartTickerSequence(rotator) { rotator.Ticking = true; rcr_StartTicker(rotator.LeadTickers[rotator.CurrentLeadTicker]); }
function rcr_EndTickerSequence(rotator) { rotator.Ticking = false; if (!rotator.Stopped) { if (rotator.RotationType == 'ContentScroll') { var functionParam = 'scroll_ShowNextSlide(' + rotator.GlobalID + ')'; rotator.NextSlideTimeoutID = window.setTimeout(functionParam, rotator.SlidePause); } else { ss_DisplaySlide(rotator); } } rcr_SetNextLeadTicker(rotator); }
// Sets the lead ticker index for the next slide function rcr_SetNextLeadTicker(rotator) { if (rotator.CurrentLeadTicker == rotator.LeadTickers.length - 1) rotator.CurrentLeadTicker = 0; else rotator.CurrentLeadTicker ++; }
// Sets the text of all ticker instances contained within the give rotator instance to '' function rcr_ResetTickers(rotator) { if (rotator.HasTickers) for (var i = 0; i < rotator.Tickers.length; i++) rcr_SetTickerText(rotator.Tickers[i], ''); }
function mousy(t) { if(t) rcr_Stop(rco_newsRotator); else rcr_Play(rco_newsRotator); }
// Determines whether the mouse pointer is currently over the given object function nsIsMouseOnObject(objName, evt) { if (objName != null) { var obj = document.getElementById(objName); var objLeft = ns_pageX(obj) - 1; var objTop = ns_pageY(obj) - 1; var objRight = objLeft + obj.offsetWidth + 1; var objBottom = objTop + obj.offsetHeight + 1;
// Calculates the absolute page x coordinate of any element function ns_pageX(element) { var x = 0; do { if (element.style.position == 'absolute') { return x + element.offsetLeft; } else { x += element.offsetLeft; if (element.offsetParent) if (element.offsetParent.tagName == 'TABLE') if (parseInt(element.offsetParent.border) > 0) { x += 1; } } } while ((element = element.offsetParent)); return x; }
// Calculates the absolute page y coordinate of any element function ns_pageY(element) { var y = 0; do { if (element.style.position == 'absolute') { return y + element.offsetTop; } else { y += element.offsetTop; if (element.offsetParent) if (element.offsetParent.tagName == 'TABLE') if (parseInt(element.offsetParent.border) > 0) { y += 1; } } } while ((element = element.offsetParent)); return y; } </script>
du kan lægge det øverste javascript i en særskilt fil og så hente det ind i toppen af din fil - husk at rette stien der hvor billederne hentes ind (nederst i scriptet)
// Starts content rotation for the given rotator instance function rcr_Start(rotator) { if (rotator.RotationType == 'ContentScroll') { scroll_Init(rotator); scroll_ShowNextSlide(rotator); } else { ss_ShowNextSlide(rotator); } }
// Continues content rotation after it was stopped function rcr_Play(rotator) { if (!rotator.Stopped) return null; rotator.Stopped = false;
if (!rotator.Ticking) { if (rotator.RotationType == 'SlideShow') { ss_Play(rotator); } else { scroll_Play(rotator); } } }
// Stops content rotation for the given rotator instance function rcr_Stop(rotator) { if (rotator.Stopped) return null; rotator.Stopped = true; window.clearTimeout(rotator.NextSlideTimeoutID); window.clearTimeout(rotator.HideTimeoutID); if (rotator.SlidePause == 0) window.clearInterval(rotator.ScrollIntervalID); if (rotator.RotationType == 'SlideShow') { var Container = document.getElementById(rotator.ContainerID); Container.style.visibility = 'visible'; } }
// Sets the index of the next slide function rcr_SetNextSlideIndex(rotator) { if (rotator.CurrentSlide == -1) rotator.CurrentSlide = 0; else if (rotator.CurrentSlide == rotator.Slides.length - 1) { rotator.CurrentSlide = 0; rotator.FirstTimeAround = false; } else rotator.CurrentSlide ++; }
// Initializes slide content function scroll_Init(rotator) { var Container = document.getElementById(rotator.ContainerID); var RotatorElement = document.getElementById(rotator.ElementID); var startTop; var startLeft;
// Shows the next slide when RotationType == 'ContentScroll' function scroll_ShowNextSlide(rotator) { rcr_SetNextSlideIndex(rotator); if (!rotator.Loop && !rotator.FirstTimeAround) { rcr_Stop(rotator); return null; }
// så rotationen stopper når musen holdes over // Moves the current slide by the number of pixels specified in rotator.ScrollStep function scroll_NextSlideToView(rotator) { if(!rotator.Stopped){ // tilføjet var Container = document.getElementById(rotator.ContainerID); var CurSlide = document.getElementById(rotator.Slides[rotator.CurrentSlide]); var newTop = parseInt(Container.style.top.replace('px', '')); var newLeft = parseInt(Container.style.left.replace('px', ''));
// Move the slide container switch (rotator.ScrollDirection) { case 'up': newTop -= rotator.ScrollStep; break;
// Figure out the slide threshold var newTopThreshold = 0; var newLeftThreshold = 0; var prevSlide = document.getElementById(rotator.Slides[scroll_PreviousSlideIndex(rotator)]); if (!(rotator.FirstTimeAround && rotator.CurrentSlide == 0)) { newTopThreshold = prevSlide.offsetHeight; newLeftThreshold = prevSlide.offsetWidth; }
// Stop to show the slide or run tickers, if required if ((newTop + newTopThreshold == 0 && rotator.ScrollDirection == 'up') || (newLeft + newLeftThreshold == 0 && rotator.ScrollDirection == 'left')) { window.clearInterval(rotator.ScrollIntervalID); rotator.ScrollIntervalID = 0; if (!(rotator.FirstTimeAround && rotator.CurrentSlide == 0)) scroll_SwapPreviousSlide(rotator);
if (rotator.HasTickers) { rcr_StartTickerSequence(rotator); } else { var functionParam = 'scroll_ShowNextSlide(' + rotator.GlobalID + ')'; if (!rotator.Stopped) rotator.NextSlideTimeoutID = window.setTimeout(functionParam, rotator.SlidePause); } } } // tilføjet }
// Removes the previous slide from the content tree, then recreates it at the end function scroll_SwapPreviousSlide(rotator) { var Container = document.getElementById(rotator.ContainerID); if (rotator.ScrollDirection == 'up') { var prevSlide = document.getElementById(rotator.Slides[scroll_PreviousSlideIndex(rotator)]); var prevSlideCopy = prevSlide.cloneNode(true); Container.removeChild(prevSlide); Container.style.top = '0px'; Container.appendChild(prevSlideCopy); rcr_ResetTickers(rotator); } else { var cRow = document.getElementById(rotator.ContainerRowID); var prevSlideCell = cRow.cells[0]; var a = cRow.removeChild(prevSlideCell); Container.style.left = '0px'; var b = cRow.appendChild(a); } }
// Returns the index of the previous slide function scroll_PreviousSlideIndex(rotator) { if (rotator.CurrentSlide == 0) return rotator.Slides.length - 1; else return rotator.CurrentSlide - 1; }
// Shows the next slide when RotationType == 'SlideShow' function ss_ShowNextSlide(rotator) { if (rotator.Stopped) return null; rcr_SetNextSlideIndex(rotator);
// Setup slide content var Container = document.getElementById(rotator.ContainerID); var CurSlide = document.getElementById(rotator.Slides[rotator.CurrentSlide]); Container.innerHTML = CurSlide.innerHTML; CurSlide.innerHTML = ''; rcr_ResetTickers(rotator);
ss_PlayShowEffect(rotator);
if (rotator.HasTickers) { // Set timeout for displaying the slide var functionParam = 'rcr_StartTickerSequence(' + rotator.GlobalID + ')'; var timerID = window.setTimeout(functionParam, rotator.ShowEffectDuration); } else { // Set timeout for displaying the slide var functionParam = 'ss_DisplaySlide(' + rotator.GlobalID + ')'; rotator.NextSlideTimeoutID = window.setTimeout(functionParam, rotator.ShowEffectDuration); } }
// Displays current slide when RotationType == 'ContentScroll' function ss_DisplaySlide(rotator) { if (rotator.Stopped) return null;
// Set timeout for hiding the slide var functionParam = 'ss_PlayHideEffect(' + rotator.GlobalID + ')'; rotator.HideTimeoutID = window.setTimeout(functionParam, rotator.SlidePause);
// Set timeout for ss_ShowNextSlide var delay = 0; if (rotator.HideEffect) delay += rotator.HideEffectDuration; delay += rotator.SlidePause; functionParam = 'ss_ShowNextSlide(' + rotator.GlobalID + ')'; rotator.NextSlideTimeoutID = window.setTimeout(functionParam, delay); }
// Plays show effect when RotationType == 'ContentScroll' function ss_PlayShowEffect(rotator) { var Container = document.getElementById(rotator.ContainerID);
if (Container.filters && rotator.ShowEffect) Container.filters[0].play(); }
// Plays hide effect when RotationType == 'ContentScroll' function ss_PlayHideEffect(rotator) { var Container = document.getElementById(rotator.ContainerID);
if (Container.filters && rotator.HideEffect) { Container.style.filter = rotator.HideEffect; Container.filters[0].apply(); } // Reset slide content var CurSlide = document.getElementById(rotator.Slides[rotator.CurrentSlide]); CurSlide.innerHTML = Container.innerHTML; Container.style.visibility = 'hidden'; if (Container.filters && rotator.HideEffect) Container.filters[0].play(); }
// Starts the ticker sequence for the current slide of the given rotator instance function rcr_StartTickerSequence(rotator) { rotator.Ticking = true; rcr_StartTicker(rotator.LeadTickers[rotator.CurrentLeadTicker]); }
function rcr_EndTickerSequence(rotator) { rotator.Ticking = false; if (!rotator.Stopped) { if (rotator.RotationType == 'ContentScroll') { var functionParam = 'scroll_ShowNextSlide(' + rotator.GlobalID + ')'; rotator.NextSlideTimeoutID = window.setTimeout(functionParam, rotator.SlidePause); } else { ss_DisplaySlide(rotator); } } rcr_SetNextLeadTicker(rotator); }
// Sets the lead ticker index for the next slide function rcr_SetNextLeadTicker(rotator) { if (rotator.CurrentLeadTicker == rotator.LeadTickers.length - 1) rotator.CurrentLeadTicker = 0; else rotator.CurrentLeadTicker ++; }
// Sets the text of all ticker instances contained within the give rotator instance to '' function rcr_ResetTickers(rotator) { if (rotator.HasTickers) for (var i = 0; i < rotator.Tickers.length; i++) rcr_SetTickerText(rotator.Tickers[i], ''); }
function mousy(t) { if(t) rcr_Stop(rco_newsRotator); else rcr_Play(rco_newsRotator); }
// Determines whether the mouse pointer is currently over the given object function nsIsMouseOnObject(objName, evt) { if (objName != null) { var obj = document.getElementById(objName); var objLeft = ns_pageX(obj) - 1; var objTop = ns_pageY(obj) - 1; var objRight = objLeft + obj.offsetWidth + 1; var objBottom = objTop + obj.offsetHeight + 1;
// Calculates the absolute page x coordinate of any element function ns_pageX(element) { var x = 0; do { if (element.style.position == 'absolute') { return x + element.offsetLeft; } else { x += element.offsetLeft; if (element.offsetParent) if (element.offsetParent.tagName == 'TABLE') if (parseInt(element.offsetParent.border) > 0) { x += 1; } } } while ((element = element.offsetParent)); return x; }
// Calculates the absolute page y coordinate of any element function ns_pageY(element) { var y = 0; do { if (element.style.position == 'absolute') { return y + element.offsetTop; } else { y += element.offsetTop; if (element.offsetParent) if (element.offsetParent.tagName == 'TABLE') if (parseInt(element.offsetParent.border) > 0) { y += 1; } } } while ((element = element.offsetParent)); return y; } </script>
<div id="newsRotator_SlideContainer" style="position:relative;visibility:hidden;cursor:hand"> <% b = 0 set fs=Server.CreateObject("Scripting.FileSystemObject")
set fo=fs.GetFolder(Server.MapPath("navn på den mappe hvor billederne ligger i")) for each x in fo.files 'Print the name of all files in the test folder billed = x.Name %> <div id="newsRotator_slide<%=b%>"> <table width="100%" height="100%" border="0" cellpadding="1" cellspacing="0" > <tr bgcolor="#E2E2E2" ><td height="18"><img src="<%=billed%>"></td></tr> <tr bgcolor="#E2E2E2" ><td height="18" class=""> test <%=b%> </td></tr> </tr> </table></div> <% javascript_skriv = javascript_skriv & " rco_newsRotator.Slides["&b&"] = 'newsRotator_slide"&b&"';" b = b + 1 next set fo=nothing set fs=nothing %>
lukker - har fundet hvad jeg har brug for på dynamicdrive
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.