Contao-Camp 2024
Ergebnis 1 bis 10 von 10

Thema: Imageslider - bildnummer als link

  1. #1
    Contao-Nutzer
    Registriert seit
    11.07.2009.
    Beiträge
    106

    Standard Imageslider - bildnummer als link

    hi.

    ist es möglich statt den "next" und "prev" buttons die nummern der bilder als link unter dem slider darzustellen damit man zu den bildern gezielt springen kann?

  2. #2
    Contao-Fan Avatar von Schlauchbeutelmaschine
    Registriert seit
    16.06.2009.
    Ort
    Wiesbaden
    Beiträge
    668

    Standard

    Hallo,

    das ist so mit dem Imageslider nicht möglich, außer du baust in ein wenig um.
    Siehe Beispiel 5.
    Du könntest es aber mal mit einem Contentslider probieren z.B. mit dem Noobslider.

  3. #3
    Contao-Nutzer
    Registriert seit
    07.07.2009.
    Beiträge
    50

    Standard

    Hallo,

    der Eintrag ist zwar schon ein paar Tage alt aber ich hab's jetzt erst gesehen.
    Ich habe den Imageslider vor einiger Zeit mal umgebaut, so daß er Javascript-Code ausgibt um die Bildnummern anzuzeigen und klickbar zu machen. Allerdings in einer älteren Version.
    Hier zwei Beispiele:
    http://www.andreas-gerzer.de
    http://www.lehmbau-gaertner.de

    Im Prinzip nur ein paar Änderungen in der ContentImageslider.php und ModuleImageslider.php.

    So ca. mitten im Script einfügen:

    PHP-Code:
    $walk['init_1'] = "var myImgCount = document.getElementById('elements" $objSettings->id "').getElementsByTagName('img').length;";
          
    $walk['init_2'] = "var myImgNavi = 'Bild: ';";
          
    $walk['init_3'] = "for(var i = 1; i <= myImgCount; i++) myImgNavi = myImgNavi + '<a>' + i + '<\/a>';";
          
    $walk['init_4'] = "document.getElementById('handles').setAttribute('id','handles" $objSettings->id "');";
          
    $walk['init_5'] = "document.getElementById('handles" $objSettings->id "').innerHTML = myImgNavi;";

          
    $walk[1] = "onWalk: function(current_index){
              handles" 
    $objSettings->id ".removeClass('active');
              handles" 
    $objSettings->id "[current_index].addClass('active');
          }"
    ;
          
    $walk[2] = "var handles" $objSettings->id " = $$('#handles" $objSettings->id " a');";
          
    $walk[3] = "handles" $objSettings->id ".each(function(el,i){el.addEvent('click',V" $objSettings->id ".walk.bind(V" $objSettings->id ",[i,true]));});";
          
    $walk[4] = "handles" $objSettings->id "[0].addClass('active');"
    und ein Stück weiter unten erweitern:

    PHP-Code:
    $GLOBALS['TL_HEAD'][] = "<script type=\"text/javascript\">
    <!--//--><![CDATA[//><!--
    window.addEvent('domready',function()
    {
    //is-js-start
        var V" 
    $objSettings->id " = new viewer( $$('#elements" $objSettings->id " img)' ),
        {
            sizes: {w:" 
    $arrImageslider[0] . ",h:" $arrImageslider[1] . "},
            mode: 'rand',
            modes: [" 
    $EffectType "],
            fxOptions:{ duration: " 
    $objSettings->effect_duration " " $EffectsExtended " },
            interval: " 
    $objSettings->rotation_interval ",
            " 
    $walk[1] . "
        });
        
    $play
        
    $walk[init_1]
        
    $walk[init_2]
        
    $walk[init_3]
        
    $walk[init_4]
        
    $walk[init_5]
        
    $walk[2]
        
    $walk[3]
        
    $walk[4]
    //is-js-end
    });
    //--><!]]>
    </script>"


    Grüzli - Andi
    Geändert von wingover (20.07.2010 um 08:43 Uhr)

  4. #4
    Contao-Fan Avatar von Schlauchbeutelmaschine
    Registriert seit
    16.06.2009.
    Ort
    Wiesbaden
    Beiträge
    668

    Lächelndes Gesicht

    Hallo Andi,

    danke für das Beispiel!
    Ich werde es mal nach oben stellen.

    Grüße Sabri

  5. #5
    Contao-Nutzer
    Registriert seit
    14.05.2010.
    Beiträge
    16

    Standard

    Im Prinzip nur ein paar Änderungen in der ContentImageslider.php und ModuleImageslider.php. So ca. mitten im Script einfügen:
    Vielen Dank für diese Lösung, die ich gerade haargenau so für ein Projekt benötige

    Ist es möglich die Anweisung etwas zu konkretisieren? Ich stehe etwas hilflos da wenn ich lese: "so ca. mitten im Script einfügen". Außerdem geht auch nicht draus hervor welche Codezeilen in die ContentImageslider.php und welche in die ModuleImageslider.php gehören.

    Herzlichen Dank!

    Gruß, David

  6. #6
    Contao-Fan Avatar von Schlauchbeutelmaschine
    Registriert seit
    16.06.2009.
    Ort
    Wiesbaden
    Beiträge
    668

    Standard

    Hallo David,

    ich habe die mal die Zeilen rausgesucht wo du es einfügst, für das Contentelement.
    Für das Modul ist es ähnlich nur die Zeilenummern können varieren.

    1. Block oberhalb von Zeile 292
    2. Block innerhalb der beiden Klammern der Abfrage

    PHP-Code:
        /* Add CSS to Head */
        
    if ($JSAdded
        {
            
    $GLOBALS['TL_HEAD'][$JSArrayPos] =    str_replace('/*is-js-end*/''/*is-js-end*/
    /*is-js-start*/
    $strTplJS '
    /*is-js-end*/'
    ,
    $GLOBALS['TL_HEAD'][$JSArrayPos]);    

        } 
        else 
        {

        
    $GLOBALS['TL_HEAD'][] = "<script type=\"text/javascript\">
    <!--//--><![CDATA[//><!--
    window.addEvent('domready',function()
    {
    /*is-js-start*/
    $strTplJS "
    /*is-js-end*/
    });
    //--><!]]>
    </script>"
    ;        
            
        } 

  7. #7
    Contao-Nutzer
    Registriert seit
    14.05.2010.
    Beiträge
    16

    Standard

    Zitat Zitat von Schlauchbeutelmaschine Beitrag anzeigen
    ich habe die mal die Zeilen rausgesucht wo du es einfügst, für das Contentelement.
    Wunderbar! Herzlichen Dank!

  8. #8
    Contao-Urgestein Avatar von Kahmoon
    Registriert seit
    22.06.2009.
    Ort
    München
    Beiträge
    5.273

    Standard

    Servus,

    jetzt steh ich etwas am Schlauch. Welcher Code muss jetzt wo eingefügt werden? Der von wingover oder Schlauchbeutelmaschine?

    Letzteres hab ich in die ModuleImageslider.php an 292 gesetzt...ändert aber nix . Brauche aktuell für ein Projekt ebenfalls eine Nummerierung statt "prev, next". Wäre das nicht über das Template mod_imageslider.tpl möglich? Hier kommt doch sicher auch die Anzahl der Bilder an oder? Das wäre dann quasi auch updatesicher!

    Gruß
    Geändert von Kahmoon (21.01.2011 um 12:43 Uhr)

  9. #9
    Contao-Fan Avatar von Schlauchbeutelmaschine
    Registriert seit
    16.06.2009.
    Ort
    Wiesbaden
    Beiträge
    668

    Standard

    Hallo!

    ich werde mir das bei Gelegenheit nochmal anschauen
    und dir Feedback geben.

    Grüße Sabri

  10. #10
    Contao-Urgestein Avatar von Kahmoon
    Registriert seit
    22.06.2009.
    Ort
    München
    Beiträge
    5.273

    Standard

    Danke. Ich habe inzwischen den Noobslider verwendet. Der bietet genau diese Option. Trotzdem könnte/sollte der Imageslider diese Funktion auch haben

Aktive Benutzer

Aktive Benutzer

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

Ähnliche Themen

  1. Antworten: 23
    Letzter Beitrag: 22.08.2015, 16:17
  2. Newsletter Link/Anker Problem insert link:url
    Von waschbecken im Forum Newsletter
    Antworten: 6
    Letzter Beitrag: 13.04.2010, 08:40

Lesezeichen

Lesezeichen

Berechtigungen

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