Ergebnis 1 bis 11 von 11

Thema: [gelöst] Accordeon bei Mouseover öffnen/schließen?

  1. #1
    Contao-Fan Avatar von comanche
    Registriert seit
    12.11.2009.
    Beiträge
    496

    Standard [gelöst] Accordeon bei Mouseover öffnen/schließen?

    Hallo,

    über die Suchfunktion bin ich nicht fündig geworden, deshalb frag' ich ganz unverfroren: Kann ich das Accordeon so einstellen, dass es bei Mouseover einklappt/aufklappt?

    Danke und Grüße,
    Andreas
    Geändert von comanche (05.05.2010 um 07:58 Uhr) Grund: Problem wurde gelöst. Danke!

  2. #2
    Community-Moderator Avatar von schman
    Registriert seit
    19.06.2009.
    Ort
    Dornbirn
    Beiträge
    3.739
    User beschenken
    Wunschliste

    Standard

    Das Accodion läuft über MooTools, hierzu gibt es auch ein Template moo_accordion (oder so ähnlich)
    Dort wird der Aufruf des accordiosn getätigt, nun kannst du alle Optionen verwenden die eben das Accordion bereitstellt.

  3. #3
    Contao-Fan Avatar von comanche
    Registriert seit
    12.11.2009.
    Beiträge
    496

    Standard

    Danke für den Tipp. Allerdings habe ich als Nicht-Programmierer keine Ahnung, wie die Syntax im Template lauten müsste.

    Ich hatte mir diese Seite angeschaut und versucht die entsprechende Funktion (unter "View Source") in mein Seitentemplate einzubauen, um den Event "mouseover" zu setzen. Das klappt aber so nicht.

    Code:
    <script type="text/javascript">
    	$(function() {
    		$("#accordion").accordion({
    			event: "mouseover"
    		});
    	});
    	</script>
    Wo und vor allem WIE kann ich das Verhalten auf "mouseover" umstellen? Hast Du noch einen Hinweis für mich?

    Grüße,
    Andreas

  4. #4
    AG CMS-Garden
    Contao-Urgestein
    Avatar von lindesbs
    Registriert seit
    05.06.2009.
    Ort
    Oer-Erkenschwick
    Beiträge
    4.154
    Partner-ID
    keine
    User beschenken
    Wunschliste

    Standard

    Nach Befragung einer gaengigen Suchmaschine, finde ich folgende Seite : http://davidwalsh.name/mootools-accordion-hover-event

    Schau Dir die Demo an, ich vermute mal, das ist das, was du haben moechtest.
    von Willi Voltz aus PR 500: Henry George sagte einmal: »Kultur ist Zusammenarbeit.«


    Contao-Hosting: begeisterter Uberspace-Nutzer

  5. #5
    Contao-Fan Avatar von comanche
    Registriert seit
    12.11.2009.
    Beiträge
    496

    Standard

    Zitat Zitat von lindesbs Beitrag anzeigen
    Nach Befragung einer gaengigen Suchmaschine, finde ich folgende Seite : http://davidwalsh.name/mootools-accordion-hover-event

    Schau Dir die Demo an, ich vermute mal, das ist das, was du haben moechtest.
    Vielen Dank für den Link!

    Da ich ein hier im Forum gepostetes Toggler-Script im Einsatz habe, dachte ich mir, ich integriere den Mouseover in diesem Script, was dann so aussschaut:

    Code:
    <script type="text/javascript">
    <!--//--><![CDATA[//><!--
    window.addEvent('domready', function()
    {
    	$$('.toggler').addEvent('mouseenter', function() {
    	this.fireEvent('click'); });
    	
    	this.accordion = new Accordion($$('div.toggler'), $$('div.accordion'), 
    	{
    		opacity: false,
    		onActive: function(toggler, i)
    		{
    			toggler.getFirst() ? toggler.getFirst().addClass('togactive') : toggler.addClass('togactive');
    			toggler.getFirst() ? toggler.getFirst().removeClass('toginactive') : toggler.removeClass('toginactive');
    		},
    
    		onBackground: function(toggler, i)
    		{
    			toggler.getFirst() ? toggler.getFirst().removeClass('togactive') : toggler.removeClass('togactive');
    			toggler.getFirst() ? toggler.getFirst().addClass('toginactive') : toggler.addClass('toginactive');
    		}
    	});
    	
    });
    //--><!]]>
    </script>
    Es funktioniert grundsätzlich, bis auf dass die Elemente beim Darüberfahren manchmal "zittern". Siehe hier:

    Beispielseite

    Ist die Funktion korrekt in das Script integriert oder siehst Du da gravierende Fehler?

    Nochmals vielen Dank und viele Grüße,
    Andreas

  6. #6
    AG CMS-Garden
    Contao-Urgestein
    Avatar von lindesbs
    Registriert seit
    05.06.2009.
    Ort
    Oer-Erkenschwick
    Beiträge
    4.154
    Partner-ID
    keine
    User beschenken
    Wunschliste

    Standard

    Offensichtlich funktioniert es ja, aber ich kann nicht sagen ob das richtig oder flasch ist. JS ist nicht wirklich mein Ding.
    von Willi Voltz aus PR 500: Henry George sagte einmal: »Kultur ist Zusammenarbeit.«


    Contao-Hosting: begeisterter Uberspace-Nutzer

  7. #7
    Contao-Fan Avatar von comanche
    Registriert seit
    12.11.2009.
    Beiträge
    496

    Standard

    Zitat Zitat von lindesbs Beitrag anzeigen
    Offensichtlich funktioniert es ja, aber ich kann nicht sagen ob das richtig oder flasch ist. JS ist nicht wirklich mein Ding.
    Ok, trotzdem vielen Dank!

    Grüße,
    Andreas

  8. #8
    Contao-Fan Avatar von comanche
    Registriert seit
    12.11.2009.
    Beiträge
    496

    Frage Bei Click bzw. Mouseover nicht schließen?

    Jetzt habe ich noch eine Frage, zu der ich wieder mal per Suche keine Antwort gefunden habe (Asche auf mein Haupt):

    Ist es möglich, das Schließen eines Accordeon-Elements bei Klick auf dessen Titel zu verhindern?

    Es soll sich ein Element quasi nur dann schließen, wenn ein anderes geöffnet wird. Hintergrund: bei Verwendung des Mouseover-Events endet es schnell in hektischem Auf- und Zuklappen der Elemente. Aber auch ohne Mouseover-Effekt wäre es schön, wenn man das Zuklappen per Klick eines geöffneten Elements unterbinden könnte, um zu verhindern, dass alle Elemente geschlossen sind.

    Vielleicht bildet das weiter oben gezeigte Script schon eine Grundlage, um das Reagieren eines geöffneten (aktiven) Elements auf ein Maus-Event zu unterbinden?

    Grüße,
    Andreas
    Geändert von comanche (04.05.2010 um 14:56 Uhr)

  9. #9
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.557
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo comanche,

    Zitat Zitat von comanche Beitrag anzeigen
    Es funktioniert grundsätzlich, bis auf dass die Elemente beim Darüberfahren manchmal "zittern".
    Also, soweit ich das sehe, kommt dieser "Effekt" dadurch zustande, dass da im ersten Element des Akkordeons zusätzlich ein Flash-Video eingebunden ist, also im Prinzip genau dann, wenn sowohl im Flash als auch im JS eine Aktion stattfindet.

    Weiters fällt mir auf, dass Dein Akkordeon zweimal initialisiert und konfiguriert wird, einmal im HEAD der Seite und einmal am Seitenende. Hast Du den Code für das Akkordeon im HEAD manuell in Dein Seiten-Template "fe_xxx.tpl" eingefügt oder hast Du das über das betreffende Eingabefeld im "Seitenlayout" gemacht?

    In Deinem Seitenlayout ist auf jeden Fall unten im Abschnitt "MooTools-Templates" der Eintrag "moo_accordion" ausgewählt, den Du aber im gegenständlichen Fall nicht mehr brauchst (andernfalls wird - wie oben schon erwähnt - das Akkordeon zweimal konfiguriert)

    Als Alternative könntest Du durchaus auch, anstelle den Code im HEAD der Seite einzubinden, ein eigenes MooTools-Template anlegen (z.B. "moo_accordion_mouseover.tpl") und dort den besagten Code mit sämtlichen diebezüglichen Einstellungen/Optionen reinschreiben. So hättest Du nämlich auch die Möglichkeit, dieses Template bequem im Backend unter Seitenlayouts zu aktivieren oder deaktivieren...
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  10. #10
    Contao-Fan Avatar von comanche
    Registriert seit
    12.11.2009.
    Beiträge
    496

    Standard

    xchs, vielen Dank für die ausführlichen Erklärungen! Ich werde schauen, dass ich etwas Ordung in das Chaos bringe. *schäm*

    Grüße,
    Andreas

  11. #11
    Contao-Fan Avatar von comanche
    Registriert seit
    12.11.2009.
    Beiträge
    496

    Standard Die Lösung

    Zitat Zitat von xchs Beitrag anzeigen
    ... Weiters fällt mir auf, dass Dein Akkordeon zweimal initialisiert und konfiguriert wird, einmal im HEAD der Seite und einmal am Seitenende. ...
    Ich hatte das Accordeon Script im Seitenlayout unter den Head-Tags eingefügt. Dass das Accordeon zweimal initialisiert wird war der entscheidende Hinweis! Da sieht man mal wieder, was man alles falsch machen kann, wenn man von Scripting keine Ahnung hat *g*.

    Nun habe ich - wie von Dir vorgeschlagen - ein eigenes Moo-Template erstellt und das Script aus dem Head-Bereich herausgenommen. Es wird also nur noch einmal am Seitenende initialisiert. Und siehe da: das Zittern ist weg und das Verhalten des Accordeon beim Mouseover ist genau so, wie ich es wollte.

    Vielen Dank dafür!

    Grüße,
    Andreas

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 13.10.2010, 18:48
  2. [gelöst] Accordeon + Flash = Problem
    Von comanche im Forum Allgemeine Inhaltselemente
    Antworten: 3
    Letzter Beitrag: 27.04.2010, 08:19
  3. Gelöst: Link in einem neuen Browserfenster öffnen funktioniert nicht
    Von ipalme im Forum Layout / Templates / Holy Grail
    Antworten: 8
    Letzter Beitrag: 13.02.2010, 17:26

Lesezeichen

Lesezeichen

Berechtigungen

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