Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 17
  1. #1
    bluetulip ist offline Jungspund
    registriert
    07-01-2014
    Beiträge
    16

    Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Hallo zusammen,

    ich erstelle gerade eine Slideshow, bei der die Bilder nacheinander ins Bild reinsliden.
    Das funktioniert auch

    Allerdings sind unter der Slideshow jeweils die Miniformate der Bilder angezeigt, die in der Slideshow vorkommen.

    Ich will nun, dass bei Klick auf ein Miniformat dann direkt die grosse Version in der Slideshow eingeblendet wird und ein paar
    Sekunden dort bleibt. Danach soll die Slideshow ganz normal weiter laufen.

    Bei den anderen Befehlen, die sich so in der Animation befinden funktioniert folgendes perfekt:
    Ausschnitt aus meiner Animationsfunktion:


    Code:
    if (a==(-20)){
    	document.getElementById("mini1").style.border="5px" + " solid" + " green";
    	document.getElementById("mini2").style.border="0px" ;
    	document.getElementById("mini3").style.border="0px" ;
    	document.getElementById("mini4").style.border="0px" ;
    	document.getElementById("mini5").style.border="0px" ;
    	document.getElementById("mini6").style.border="0px" ;
    	document.getElementById("mini7").style.border="0px" ;
    	document.getElementById("mini8").style.border="0px" ;
    	timer1 = setTimeout('animation1()',5000);}
            else {timer1 = setTimeout('animation1()',0);}
    wenn ich nun das hier schreibe, bewegen sich nur die jeweiligen Bilder an die Position, aber die Animation laeuft nicht weiter...
    (ich sortiere die Bilder an Ihre Ausgansposition)

    Code:
             else if (mini1=1){
    	 a = 0;
    	 b = 900;
    	 c = 1800;
    	 d = 2700;
    	 e = 3600;
    	 f =  4500;
    	 g = 5400;
    	 h = 6300;
    	timer1 = setTimeout('animation()',1000);} ==>das hier wird nicht mehr aufgerufen

    Ich weiss auch nicht so richtig wie ich auf onclick zugreigen soll, daher habe ich das mal so gemacht:
    Ich will ja mit onklick nicht wirklich eine Funktion aufrufen, sondern eher mit einer daraufzugreifen.....
    mini1.onlick=funktion1;

    function funktion1{
    mini1 = 1;
    }

    Gibt vielleicht sowas wie if(onclick.mini1)???

    Wuerde mich ueber Hilfe echt freuen, probier schon seit Stunden rum und finde keine Loesung
    Vielen Dank
    Geändert von bluetulip (10-01-2014 um 00:53 Uhr)

  2. #2
    j-l-n Guest

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Hättest du vielleicht einen Testlink, damit wir uns das Ganze auch mal online ansehen können?

    PS: Code-Tags zu setzen hilft sehr, die Übersichtlichkeit zu erhöhen

  3. #3
    bluetulip ist offline Jungspund
    registriert
    07-01-2014
    Beiträge
    16

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Hallo Julian,

    Habe meinen JS Code angehaengt, das HTML und CSS ist so viel und vielleicht versteht man es auch so.
    Habe leider keinen Link, die Webseite ist noch nicht online und so wie sie jetzt ist kann ich sie auch noch nicht ins Netz stellen.

    Habe jeweils im angehaengten Dokument kommentiert, was das Problem ist.

    Vielen Dank fuer Deine Hilfe im Voraus
    Angehängte Dateien Angehängte Dateien

  4. #4
    j-l-n Guest

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Ich werd mir die Dateien bald ansehen, zurzeit habe ich leider gerade keine Zeit, tut mir leid. Sicher melden sich auch noch andere Nutzer, die dir mithelfen können!

    Möchtest du eigentlich "unbedingt" den Slider von dir selbst verwenden oder würde auch eine andere fertige Lösung funktionieren? Hierzu würde dich das vielleicht interessieren: http://forum.jswelt.de/javascript/58...xt-slider.html (Image und Text Slider)

    Grüße,

    Julian

  5. #5
    j-l-n Guest

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Nachtrag: ich glaube, der jQuery Slider with Image and Video LightBox Popup wäre ziemlich passend. Da hast du eine Slideshow und der Benutzer kann per Klick auf ein Bild dieses vergrößert in der Lightbox öffnen...

  6. #6
    bluetulip ist offline Jungspund
    registriert
    07-01-2014
    Beiträge
    16

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Danke fuer Deine schnelle Antwort.
    Die jquery slider sind ja alle total schoen und sehen sicher auch professioneller aus als meiner. Leider kenne ich mich mit dem jquery Code nicht aus.
    Kann nur JS . Ausserdem will ich auch gerne wissen, wie man das umsetzt.Der ganze Slider ist ans Design meiner Seite angepasst(es handelt sich um bisschen mehr als ein Bild, habe hier nur Bild geschrieben, sonst waere es glaube ich auch nicht so uebersichtlich ohne realle Demo zum Ansehen.
    Wahrscheinlich handelt es sich eh nur um ein kleines Detail, wie immer , aber diesmal finde ich es einfach nicht raus.
    Ich leg den Slider erstmal auf Eis, vielleicht hast du ja irgendwann mal Zeit es dir anzusehen oder auch jemand anderes

  7. #7
    j-l-n Guest

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Zitat Zitat von bluetulip Beitrag anzeigen
    Danke fuer Deine schnelle Antwort.
    Bitte, gern geschehen!

    Kann nur JS . Ausserdem will ich auch gerne wissen, wie man das umsetzt.
    Vorbildlich! Man sollte immer den Code verstehen, den man benutzt! Ist leider nicht die Regel...

    Ich leg den Slider erstmal auf Eis, vielleicht hast du ja irgendwann mal Zeit es dir anzusehen oder auch jemand anderes
    Ich bin sicher, es schalten sich heute oder morgen noch ein paar Kollegen ein ich werd's auch mal bei Gelegenheit durchschauen!

    Ach ja, zu guter Letzt: Könntest du noch deinen ersten Beitrag editieren und Code-Tags um den Code setzten? Das macht das Ganze übersichtlicher.

    Julian
    Geändert von j-l-n (09-01-2014 um 22:58 Uhr) Grund: Quote repariert

  8. #8
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.664

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Ui... da hast du mal ein schwer zu wartendes Stück Code geschrieben...

    Also zuerstmal: das mit dem if (am.onclick) funktioniert in JS so nicht wirklich. Les' dir dazu mal ein Tutorial zu JS-Events durch. Das brauchst als Grundlage für die Lösung deines Problems.

    Auch sind globale Variablen nie gut. Die solltest du möglichst vermeiden.
    Zu guter Letzt solltes du dich mit dem Konzept von Arrays vertraut machen. Deine ganzen Variablen (z.B. a-g) kann man viel übersichtlicher und leichter erweiterbar/wartbar in einem Array speichern. Dadurch würde auch der Code schlanker werden.

  9. #9
    bluetulip ist offline Jungspund
    registriert
    07-01-2014
    Beiträge
    16

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Hallo kkapsner,

    vielen Dank fuer Deine Antwort

    Zitat Zitat von kkapsner Beitrag anzeigen
    Ui... da hast du mal ein schwer zu wartendes Stück Code geschrieben...

    Also zuerstmal: das mit dem if (am.onclick) funktioniert in JS so nicht wirklich. Les' dir dazu mal ein Tutorial zu JS-Events durch. Das brauchst als Grundlage für die Lösung deines Problems.

    Auch sind globale Variablen nie gut. Die solltest du möglichst vermeiden.
    Zu guter Letzt solltes du dich mit dem Konzept von Arrays vertraut machen. Deine ganzen Variablen (z.B. a-g) kann man viel übersichtlicher und leichter erweiterbar/wartbar in einem Array speichern. Dadurch würde auch der Code schlanker werden.
    Oh nein hab ich mir fast gedacht.
    Ich habe ein Videotraining, wo die eventhandler erklaert werden.
    Allerdings geht es nur darum, dass man mit ihnen eine bestimmte Funktion aufruft, was ich in meinem Fall irgendwie nicht richtig schaffe.
    Ich dachte erst es geht ueber Parameter der Funktion Animation1, die ich dann bei onclick neu deklariere, aber das funktioniert nicht.
    Oder in Verbindung mit einer neuen Funktion, die dann auf Animation verweisst...aber wie???

    Arrays kenn ich schon, ich wollte es nur fuer mich erst mal so unkompliziert wie moeglich halten, das kann ich ja dann noch optimieren.

    Will auch nicht, dass hier jemand zu viel Zeit damit verbringt. Haette ja sein koennen, dass es nur an einem kleinen Fehler liegt, den ein Profi direkt erkennt.

  10. #10
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.664

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Zeig' doch einfach mal, was du mit dem onclick-Eventhandler ausprobiert hast. Ich glaube, du hast da ein konzeptionell falsche Vorstellung von Funktionsaufrufen im Kopf... kann mich aber auch irren.

    Arrays sind viel unkomplizierter als so viele Variablen.

    PS: mir ist gerade noch aufgefallen, dass du window.setTimeout() einen String als Parameter übergibst. Das sollte man nicht machen.

  11. #11
    bluetulip ist offline Jungspund
    registriert
    07-01-2014
    Beiträge
    16

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    sliderversion2.txtDanke fuer Deine vielen Tips

    Das kann sein, ich weiss es nicht. Bringe mir Javascript gerade selbst bei und bekomme auch kein Feedback ausser hier im Forum.
    Das mit den Strings bei setTimeout habe ich geaendert.
    Habe eine 2. Version angehaengt, bei der ich Parameter uebergebe, anstatt Variablen zu deklarieren.
    Bei dieser Version faengt die Animation an zu sliden, aber nicht nach 5000ms sondern direkt nach dem Laden der Seite und bleibt dann in der Mitte des 2. Bildes direkt stehen.
    Bei Klick auf das 1. Bild erscheint dies zwar, aber die Animation laeuft nicht weiter.
    (die onclick Aufrufe fuer Bild 2-8 hab ich jetzt noch nicht gemacht, wollte erstmal probieren ob es klappt).
    Der Firefox zeigt ausserdem die Fehlermeldung "too much recursion".

    Eine andere Idee waere noch am.onclick eine Funktion zuzuweisen, die das jeweilige Bild an die richtige Poistion springen laesst und einen Rueckgabewert an Animation1 liefert, bei welchem Bild / welcher Position sie wann weiter laufen soll. Aber mit der Umsetzung dessen habe ich Schwierigkeiten, bzw. ich kann's nicht.

  12. #12
    j-l-n Guest

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Zitat Zitat von bluetulip Beitrag anzeigen
    Habe eine 2. Version angehaengt, bei der ich Parameter uebergebe, anstatt Variablen zu deklarieren.
    Ah ja, das ist eine gute Verbesserung!
    Hättest du auch noch einen Testlink, damit wir uns das Ganze mal noch online auf deiner Seite anschauen können?
    EDIT: Ach Blödsinn, merke gerade, dass ich das ja schon in meinem ersten Post gefragt hatte...
    Geändert von j-l-n (10-01-2014 um 22:34 Uhr) Grund: Aktualisierung

  13. #13
    bluetulip ist offline Jungspund
    registriert
    07-01-2014
    Beiträge
    16

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Zitat Zitat von Julian JP Beitrag anzeigen
    Ah ja, das ist eine gute Verbesserung!
    Hättest du auch noch einen Testlink, damit wir uns das Ganze mal noch online auf deiner Seite anschauen können?
    EDIT: Ach Blödsinn, merke gerade, dass ich das ja schon in meinem ersten Post gefragt hatte...
    Super
    Die Seite ist noch nicht so recht fertig. Da ist noch zuviel Blindtext drin, das will ich so nicht online stellen.
    Wenn bis zur Fertigstellung der Inhalte die Slideshow nicht fertig ist, verwende ich sie einfach so wie sie jetzt ist(immerhin slidet sie...)
    Dann kann ich auch draufverlinken, dauert aber noch ein paar Wochen. Vielleicht koennt ihr mir dann besser helfen.

  14. #14
    bluetulip ist offline Jungspund
    registriert
    07-01-2014
    Beiträge
    16

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Hat sich erledingt, habe gerade die Loesung gefunden.
    Die erste Version(1.Anhang) + 8 verschiedene Funktionen, die jeweils
    bei onclick auf das Mini aufgerufen werden und 8 neue Timer (einen fuer jede Funktion, die von den Minis aufgerufen wird.)
    Beim ersten Funktionsaufruf wird der Timer1 gestoppt, den Bildern ihre neue Position zugeordnet und der neue Timer wird mit
    setTimeout aufgerufen.
    Ein Counter wird hochgezaehlt. Nach dem 1. Durchlauf wird der neue Timer wieder gestoppt und auf die animation1() verwiesen.
    Funktioniert optisch super.
    Die setTimeouts muss ich bei der Version als String aufrufen und die Version mit den Parametern funktioniert auch nicht...
    Keine Ahnung wieso das so ist.
    Hier ein Beispiel fuer eine der 8 Funktionen, falls noch jemand sowas bauen will und nicht weiss wie:
    ( Die Version1 ist programmiertechnisch, wie ich hier gehoert habe, aber nicht so elegant (siehe Antworten oben))
    Code:
    var i = 0;
    timer2= null;
    function amanimation(){
    	i++;
    	if (i < 2){
    	clearTimeout(timer1);
    	a = 0;
    	b = 900;
    	c = 1800;
    	d = 2700;
    	e = 3600;
    	f = 4500;
    	g = 5400;
    	h = 6300;
    	timer2 = setTimeout('amanimation()',0);}
    	else {
    		clearTimeout(timer2);
    		
    		i = 0;
    		animation1();
    	}
    	
    }
    
    am.onclick=amanimation;
    Geändert von bluetulip (11-01-2014 um 19:37 Uhr)

  15. #15
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.664

    AW: Eventhandler onclick in Animation/bei Klick stoppen/nach 5 Sek weiterlaufen

    Ok - die Version mit dem Parametern ist eigentlich besser, aber du hast bei den Timeouts einen kleinen Fehler gemacht. Du musst window.setTimeout() eine Funktionsreferez als Parameter übergeben und nicht den Rückgabewert einer Funktion. Konkret:
    Code:
    window.setTimeout(function(){
    	animation1(a,b,c,d,e,f,g,h);
    } ,5000);
    In deiner letzten Version verstehe ich nicht, warum du da einen Timeout mit einer Wartezeit von 0 eingefügt hast. Du kann doch animation1() direkt aufrufen?

    PS: Wenn du für sehr ähnliche Funktionalität lauter verschiedene Funktionen brauchst, hast du meistens was falsch gemacht: keine Funktionsparameter verwendet.

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. setinterval stoppen und weiterlaufen lassen
    Von ZaphoodB im Forum JavaScript
    Antworten: 5
    Letzter Beitrag: 07-03-2011, 17:15
  2. Flash Animation (*.swf) stoppen
    Von xuser im Forum JavaScript
    Antworten: 19
    Letzter Beitrag: 09-06-2010, 01:36
  3. Mauszeiger Wechseln nach Klick (onclick)
    Von kargo im Forum JavaScript
    Antworten: 14
    Letzter Beitrag: 26-12-2004, 20:50
  4. button und onclick EventHandler
    Von danielF im Forum Allgemeines
    Antworten: 4
    Letzter Beitrag: 07-06-2003, 20:59
  5. Animation stoppen, o.ä.
    Von Guido im Forum Site-Check
    Antworten: 4
    Letzter Beitrag: 01-12-2000, 16:23

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •