mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 19.04.2024 17:23 Benutzername: Passwort: Auto-Login

Thema: HTML / PHP - Slideshow vom 17.09.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> HTML / PHP - Slideshow
Autor Nachricht
KingKiba
Threadersteller

Dabei seit: 24.08.2007
Ort: -
Alter: 36
Geschlecht: -
Verfasst Mi 17.09.2008 16:15
Titel

HTML / PHP - Slideshow

Antworten mit Zitat Zum Seitenanfang

Hab hier einen Script gefunden, den ich gerne verändern möchte. Habe aber 2 Probleme.
Vorerst mal hier der Code:

Code:
<script type="text/javascript">

/***********************************************
* Conveyor belt slideshow script- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/


//Specify the slider's width (in pixels)
var sliderwidth="740px"
//Specify the slider's height
var sliderheight="180px"
//Specify the slider's slide speed (larger is faster 1-10)
var slidespeed=3
//configure background color:
slidebgcolor="#FFFFFF"

//Specify the slider's images
var leftrightslide=new Array()
var finalslide=''
leftrightslide[0]='<a href="http://"><img src="http://" border=0></a>'
leftrightslide[1]='<a href="http://"><img src="http://" border=0></a>'
leftrightslide[2]='<a href="http://"><img src="http://" border=0></a>'
leftrightslide[3]='<a href="http://"><img src="http://" border=0></a>'
leftrightslide[4]='<a href="http://"><img src="http://" border=0></a>'

//Specify gap between each image (use HTML):
var imagegap=" "

//Specify pixels gap between each slideshow rotation (use integer):
var slideshowgap=5


////NO NEED TO EDIT BELOW THIS LINE////////////

var copyspeed=slidespeed
leftrightslide='<nobr>'+leftrightslide.join(imagegap)+'</nobr>'
var iedom=document.all||document.getElementById
if (iedom)
document.write('<span id="temp" style="visibility:hidden;position:absolute;top:-100px;left:-9000px">'+leftrightslide+'</span>')
var actualwidth=''
var cross_slide, ns_slide

function fillup(){
if (iedom){
cross_slide=document.getElementById? document.getElementById("test2") : document.all.test2
cross_slide2=document.getElementById? document.getElementById("test3") : document.all.test3
cross_slide.innerHTML=cross_slide2.innerHTML=leftrightslide
actualwidth=document.all? cross_slide.offsetWidth : document.getElementById("temp").offsetWidth
cross_slide2.style.left=actualwidth+slideshowgap+"px"
}
else if (document.layers){
ns_slide=document.ns_slidemenu.document.ns_slidemenu2
ns_slide2=document.ns_slidemenu.document.ns_slidemenu3
ns_slide.document.write(leftrightslide)
ns_slide.document.close()
actualwidth=ns_slide.document.width
ns_slide2.left=actualwidth+slideshowgap
ns_slide2.document.write(leftrightslide)
ns_slide2.document.close()
}
lefttime=setInterval("slideleft()",30)
}
window.onload=fillup

function slideleft(){
if (iedom){
if (parseInt(cross_slide.style.left)>(actualwidth*(-1)+8))
cross_slide.style.left=parseInt(cross_slide.style.left)-copyspeed+"px"
else
cross_slide.style.left=parseInt(cross_slide2.style.left)+actualwidth+slideshowgap+"px"

if (parseInt(cross_slide2.style.left)>(actualwidth*(-1)+8))
cross_slide2.style.left=parseInt(cross_slide2.style.left)-copyspeed+"px"
else
cross_slide2.style.left=parseInt(cross_slide.style.left)+actualwidth+slideshowgap+"px"

}
else if (document.layers){
if (ns_slide.left>(actualwidth*(-1)+8))
ns_slide.left-=copyspeed
else
ns_slide.left=ns_slide2.left+actualwidth+slideshowgap

if (ns_slide2.left>(actualwidth*(-1)+8))
ns_slide2.left-=copyspeed
else
ns_slide2.left=ns_slide.left+actualwidth+slideshowgap
}
}


if (iedom||document.layers){
with (document){
document.write('<table border="0" cellspacing="0" cellpadding="0"><td>')
if (iedom){
write('<div style="position:relative;width:'+sliderwidth+';height:'+sliderheight+';overflow:hidden">')
write('<div style="position:absolute;width:'+sliderwidth+';height:'+sliderheight+';background-color:'+slidebgcolor+'" onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed">')
write('<div id="test2" style="position:absolute;left:0px;top:0px"></div>')
write('<div id="test3" style="position:absolute;left:-1000px;top:0px"></div>')
write('</div></div>')
}
else if (document.layers){
write('<ilayer width='+sliderwidth+' height='+sliderheight+' name="ns_slidemenu" bgColor='+slidebgcolor+'>')
write('<layer name="ns_slidemenu2" left=0 top=0 onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed"></layer>')
write('<layer name="ns_slidemenu3" left=0 top=0 onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed"></layer>')
write('</ilayer>')
}
document.write('</td></table>')
}
}
</script>


Wie man sieht ist es eigentlich ganz simple aufgebaut, jedoch komm ich gerade nicht mehr klar.
Ich hab 2 Probleme:

1. Ich wollte das die Bilder sich in einer Lightbox öffnen, dazu müsste ich ja eigentlich nur ein rel="lightbox" zu den links fügen. Funktioniert aber nicht.

2. Such ich im Internet schon die ganze zeit nach einen script oder einem code womit man pfadangaben so angeben kann, das ein gesamter ordner ausgewählt wird Lächel D.h. man läd alle bilder in einen ordner und die sind automatisch drin.
Müsste theo. ja funktionieren.


[edit by grunge: verschoben von allgemeines - nonprint nach programmierung]


Zuletzt bearbeitet von theGRUNGEone am Do 18.09.2008 00:23, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Pixelpole

Dabei seit: 25.10.2004
Ort: Trier
Alter: 37
Geschlecht: Männlich
Verfasst Mi 17.09.2008 16:23
Titel

Antworten mit Zitat Zum Seitenanfang

zum laden der bilder aus einem Verzeichnis.

Code:

<?php

$dir = 'bilderverzeichnis';

$img_extensions = array('jpg','jpeg','gif','png');
$img_count = 0;

while(($file = $dir->read()) !== false) {
   if(($file != '.') AND ($file != '..')) {
      $path_parts = pathinfo($dir->path.$file);
      
      if(in_array(strtolower($path_parts['extension']), $img_extensions)) {
         echo 'leftrightslide['.$img_count.']=\'<a href="http://" rel="lightbox"><img src="http://" border=0></a>\'';
         $img_count++;
      }
   }
}

?>


ungetestet.


Zuletzt bearbeitet von Pixelpole am Mi 17.09.2008 16:25, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Anzeige
Anzeige
KingKiba
Threadersteller

Dabei seit: 24.08.2007
Ort: -
Alter: 36
Geschlecht: -
Verfasst Fr 19.09.2008 09:56
Titel

Antworten mit Zitat Zum Seitenanfang

Ich glaub das könnte funktionieren, jedoch gibt es dann doch noch folgendes Problem:
Sagen wir mal Bild_1.jpg wird aus dem Ordner geladen, dann sollte wenn man auf Bild_1.jpg klickt Bild_1_groß in der Lightbox erscheinen, das geht ja jetzt nicht, richtig? Falls es da eine Lösung gibt, z.B. das dann Bild_1_groß aus einem anderen Ordner geladen wird, wie müsste ich das dann angeben?

Also nochmal mein vorhaben:
Im Ordner "private_bilder" sind die kleinen Bilder die in die Slidebox geladen werden, z.B. Bild_1.jpg, Bild_2.jpg.
Im Ordner "private_bilder_groß" sind die selben Bilder nur halt Größer, könnte man auch Bild_1.jpg, Bild_2.jpg nennen.
Jetzt sehen wir die Slidebox und klicken auf das erste Bild, also Bild_1.jpg aus dem "private_bilder" Ordner, und es öffnet sich Bild_1.jpg aus dem "private_bilder_groß" Ordner.

Theo. müsste es eigentlich funktionieren, aber wie genau weiss ich leider nicht *Schnief*
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Fr 19.09.2008 10:49
Titel

Antworten mit Zitat Zum Seitenanfang

der lightbox ist es völlig egal, welchen pfad du im <a>-tag und welchen du im <img>-tag hast. sollte für lightbox also durchaus ok sein, dass du das große bild unter privat_gross/bild_1_gross.jpg hast, und das thumbnail im img-tag anders heißt und anders liegt.

naja, vielleicht solltest du aufs ß verzichten Grins
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
KingKiba
Threadersteller

Dabei seit: 24.08.2007
Ort: -
Alter: 36
Geschlecht: -
Verfasst Fr 19.09.2008 11:15
Titel

Antworten mit Zitat Zum Seitenanfang

Was ich merkwürdig finde ist, das beim IE die lightbox funktioniert aber bei Firefox nicht Oo woran kann das liegen?
Eigentlich gehts mir weniger um die Lightbox als um die Ordner-Funktion, also das automatische abrufen von allen bildern aus den Ordnern...

Also wenn man das irgendwie hinbekommt ist es eine perfekte Slideshow für jederman...

Mir ist soeben ein weiteres Problem aufgefallen, falls man es jetzt automatisiert bekommt das die kleinen und großen bilder geladen werden, müssen irgendwie auch noch die Titel geladen werden...
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Fr 19.09.2008 11:23
Titel

Antworten mit Zitat Zum Seitenanfang

KingKiba hat geschrieben:

Eigentlich gehts mir weniger um die Lightbox als um die Ordner-Funktion, also das automatische abrufen von allen bildern aus den Ordnern...

Also wenn man das irgendwie hinbekommt ist es eine perfekte Slideshow für jederman...

Mir ist soeben ein weiteres Problem aufgefallen, falls man es jetzt automatisiert bekommt das die kleinen und großen bilder geladen werden, müssen irgendwie auch noch die Titel geladen werden...


hab sowas ähnliches mal auf die schnelle gebaut. die rangehensweise ist:

verzeichnis großer bilder einlesen. automatisiert ein thumbnailverzeichnis erstellen. das ausgabescript führt beide über <a> und <img> tag zusammen.

bezgl. deiner titel... ohne weitere maßnahmen bleibt dir da eh nur einen titel automatisch zu generieren, der fileinfos wie zb. dateiname o.ä. beinhaltet.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
KingKiba
Threadersteller

Dabei seit: 24.08.2007
Ort: -
Alter: 36
Geschlecht: -
Verfasst Fr 19.09.2008 12:47
Titel

Antworten mit Zitat Zum Seitenanfang

Hab gerade erfahren das sich dieses Script bei Firefox und paar anderen Browsern nicht mit der lightbox versteht....schade...
  View user's profile Private Nachricht senden
 
Ähnliche Themen [jQuery Cycle] Slideshow in Slideshow wechseln zusammen
Slideshow
Slideshow
Slideshow
Slideshow?
Slideshow
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.