tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von Quaese
ERLEDIGT
NEIN
ANTWORTEN
10
ZUGRIFFE
620
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    hinkel11 hinkel11 ist offline Mitglied Silber
    Registriert seit
    Feb 2009
    Beiträge
    94
    Hallo,

    ich hab auf meiner HP eine Art Slideshow-Komponente installiert. Wenn man dort auf einen Slide klickt, öffnet sich für gewöhnlich die damit verlinkte Seite in einem neuen Browserfenster. Ich hätte es nun jedoch gern so, dass sich die Seite stattdessen in einer lightbox öffnet.

    Normalerweise bewerkstellige ich dies immer, indem ich im <a>-Tag ein rel="lightbox" einfüge und fertig iss. Doch in diesem Fall ist das ganze diesmal per Javascript codiert und da sich meine Javascript-Kenntnisse nun echt in Grenzen halten, krieg ichs irgendwie nicht hin.

    Der betreffende Stelle im Code sieht wie folgt aus:
    Code :
    1
    2
    
    <a class="navbutton off navi" href="javascript:void(0);"';
        if ($rotateAction=='mouseover') {$navhtml .= ' onclick="parent.location=\''.$link.'\';return false;"';}

    Ich hatte versucht das href="javascript:void(0);" einfach durch ein rel="lightbox" zu ersetzen. Klappt aber nicht - die Seite wird trotzdem in einem neuen Fenster geöffnet.
     

  2. #2
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Moin,

    anhand dieses kleinen Schnipsels, der noch dazu PHP-Code enthält, lässt sich kaum etwas sagen. Ist das irgendwo online?
    Ich würde auf jeden Fall zusätzlich zu dem, was du bereits gemacht hast, diese onclick-Anweisung entfernen.
     

  3. #3
    hinkel11 hinkel11 ist offline Mitglied Silber
    Registriert seit
    Feb 2009
    Beiträge
    94
    Eine Demo dieser Komponente gibt hier (nicht meine Seite):
    http://www.frontpageslideshow.net/

    Was ich nun bisher geschafft habe ist, dass sich der Inhalt in einer lightbox öffnet, wenn man auf den Slide klickt, und auch wenn man auf den Mehr-Button klickt.

    Das gleiche soll nun auch passieren, wenn man rechts in der Navigation auf ein Thumbail klickt.

    Hier mal ein größerer Auszug vom Code:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    
     
            // Slide 'read more' link
            if ($show_readmore && !$image->nolink) {
                $thecontent .= "<a".$target." href=\"".$link."\" rel=\"shadowbox;width=400;height=300\" class=\"readon\">".JText::_('MORE')."</a>\n";
            }
     
            /* --------------------- SLIDE OUTPUT --------------------- */
            $html .= '
        <div class="slide">
            <div class="slide-inner">
                <a'.$target.' href="'.$link.'" rel="shadowbox;width=400;height=300" >
                    <span>
                        <span style="background:url('.$mosConfig_live_site.'/'.$image->path.') no-repeat;">
                            <span>
                                <img src="'.$mosConfig_live_site.'/'.$image->path.'" alt="'._FPSS_MOD_IMGALT.'" />
                            </span>
                        </span>
                    </span>
                </a>
                <div class="fpss-introtext"'.$hidecontent.'>
                    <div class="slidetext">'.$thecontent.'</div>
                </div>
            </div>
        </div>
            ';
                
            /* --------------------- NAVIGATION OUTPUT --------------------- */ 
            $tagline = strip_tags($image->plaintext);
            $key = $key + 1;
            if ($key < 10) { $key = "0".$key; }
            if($image->thumb){$navImg = $mosConfig_live_site.'/'.$image->thumb;} else {$navImg = $mosConfig_live_site.'/'.$image->path;}
            $navhtml .= '
                <li>
                    <a class="navbutton off navi" href="javascript:void(0);"';
                    if ($rotateAction=='mouseover') {$navhtml .= ' onclick="parent.location=\''.$link.'\';return false;"';}
                    $navhtml .= '>
                        <span class="navbar-img"><img src="'.$navImg.'" alt="'._FPSS_MOD_CLICKNAV.'" /></span>
                        <span class="navbar-key">'.$key.'</span>
                        <span class="navbar-title">'.$slidetitle.'</span>
                        <span class="navbar-tagline">'.$tagline.'</span>
                        <span class="navbar-clr"></span>
                    </a>
                </li>
            ';              
     
            if($limitslides) {$i++;}
            $div_id++;
     

  4. #4
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Sorry, aber da JS clientseitig ausgeführt wird, und ich nicht hellsehen kann, bringt PHP-Code da nicht wirklich Erleuchtung.
     

  5. #5
    hinkel11 hinkel11 ist offline Mitglied Silber
    Registriert seit
    Feb 2009
    Beiträge
    94
    Versteh ich nicht. Es dachte eigentlich es ginge nur um diese beiden Zeilen hier und wo ich das mit dem rel="shadowbox" (also lightbox) einfügen muss.

    Code :
    1
    2
    3
    
    <a class="navbutton off navi" href="javascript:void(0);"';
                    if ($rotateAction=='mouseover') {$navhtml .= ' onclick="parent.location=\''.$link.'\';return false;"';}
                    $navhtml .= '>
     

  6. #6
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Es geht darum, dass Lightbox etwas öffnet, was bei einem Link als Ziel angegeben ist.
    Ich kann nicht hellsehen, was dein PHP-Code da im Endeffekt an Ausgabe produziert.

    Eines ist aber auf jeden Fall klar, es geht nicht um PHP-Code, also bringt es nichts, wenn du welchen postest.
     

  7. #7
    hinkel11 hinkel11 ist offline Mitglied Silber
    Registriert seit
    Feb 2009
    Beiträge
    94
    In der lightbox wird in meinem Beispiel eine externe Seite geöffnet. Hier ist es "google.de". Durch welchen Parameter das definiert wird keine Ahnung. Ich weis nur, dass ich "google.de" als URL im Joomla-Backend eingegeben habe.
     

  8. #8
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Wäre es sehr umständlich, sich im Browser den Quelltext der Seite anzeigen zu Lassen, und die betreffende Passage hier zu Posten?

    Das ist es nämlich, womit JS arbeitet...sonst nichts.
     

  9. #9
    hinkel11 hinkel11 ist offline Mitglied Silber
    Registriert seit
    Feb 2009
    Beiträge
    94
    Nun all das aus dem Seitenquelltext was damit irgendwie zu tun hat lautet wir folgt:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    
    <!-- JoomlaWorks "Frontpage Slideshow" v2.0.0 starts here -->
    <style type="text/css" media="all">
    <!--
        @import "http://www.corona-gehren.de/main/modules/mod_fpss/mod_fpss/templates/Movies/template_css.php?w=500&h=300&sw=200";
    //-->   
    </style>
        
    <!--[if lte IE 7]>
    <style type="text/css" media="all">
        @import "http://www.corona-gehren.de/main/modules/mod_fpss/mod_fpss/templates/Movies/template_css_ie.css";
    </style>    
    <![endif]-->
     
        
    <script type="text/javascript" src="http://www.corona-gehren.de/main/modules/mod_fpss/mod_fpss/engines/mootools-fpss.php"></script>
        
    <script type="text/javascript">
    <!--
        var fpssPlayText = "Play";
        var fpssPauseText = "Pause";
        var crossFadeDelay = 6000;
        var crossFadeSpeed = 2000;
        var fpssLoaderDelay = 800;
        var navTrigger = "mouseover";
        var autoslide = true;
        
        var CTRtransitionText = 1000;   
        var CTRtext_effect = true;
        
    //-->
    </script>   
    <!-- JoomlaWorks "Frontpage Slideshow" v2.0.0 ends here -->

    Wird wohl nicht weiterhelfen.
    Ansonsten könnte ich noch die mootools-fpss.php anbieten. Dort steht auch nicht viel drin:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    
    <?php
     
    ob_start ("ob_gzhandler"); 
    header("Content-type: text/javascript; charset: UTF-8"); 
    header("Cache-Control: must-revalidate"); 
    $offset = 60 * 60 ; 
    $ExpStr = "Expires: " .  
    gmdate("D, d M Y H:i:s", 
    time() + $offset) . " GMT"; 
    header($ExpStr);
    include("mootools-comp.js");
    echo "\n\n";
    include("mootools-fpss-comp.js");
    ob_flush();
     
    ?>

    Es geht wie gesagt nur um die Stelle, wo das mit rel="shadowbox" hin muss und was evtl. dafür gelöscht werden muss.
     

  10. #10
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Es geht wie gesagt nur um die Stelle, wo das mit rel="shadowbox" hin muss und was evtl. dafür gelöscht werden muss.
    Und dieser findet sich dort wo?

    Sorry, ab ich bin hier raus, irgendwann ist mal gut.
     

  11. #11
    Quaese Quaese ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Feb 2004
    Beiträge
    3.451
    Respekt ... Sven soweit zu bringen, dass er Hilfe verweigert, schaffen nur wenige!

    Quaese
    Sven Mintel bedankt sich. 
    Vielleicht muss man manchmal vom Weg abkommen, um nicht auf der Strecke zu bleiben!
    ----
    Der "Fortsetzungsroman" auf www.leuteforum.de

    New kind to realize large scalable projects with jQuery: jQuery SDK

Ähnliche Themen

  1. Problem mit onlick und Javascript Objekt
    Von -André- im Forum Javascript & Ajax
    Antworten: 9
    Letzter Beitrag: 23.03.09, 20:39
  2. http request ohne onlick
    Von sigmaly im Forum Javascript & Ajax
    Antworten: 3
    Letzter Beitrag: 19.02.09, 13:52
  3. Lightbox und IE7
    Von Teufelskerl1977 im Forum CSS
    Antworten: 13
    Letzter Beitrag: 21.06.08, 16:16
  4. Lightbox
    Von sight011 im Forum Javascript & Ajax
    Antworten: 10
    Letzter Beitrag: 04.04.08, 18:11
  5. Hilfe bei onlick mit Bildwechselfunktion
    Von matze1983 im Forum Javascript & Ajax
    Antworten: 2
    Letzter Beitrag: 03.01.08, 14:44