ilch Forum » Ilch Clan 1.1 » Module und Modifikationen » Sliding Member Box (horizontal?)

Geschlossen
  1. #1
    User Pic
    Schommie Mitglied
    Registriert seit
    13.06.2008
    Beiträge
    86
    Beitragswertungen
    1 Beitragspunkte
    hallo
    ich hab den auftrag bekommen für unseren jetzigen clan ein neues design zu erstellen bzw. das aktuelle moderner zu gestalten. soweit klappt auch alles. gibt nur eine kleinere sache an der ich mir die zähne ausbeisse
    da ich im grunde keine coding erfahrung habe.

    es geht um dieses modul:
    externer Link

    die box funktioniiert auch ohne weiteres aber ich suche einen horizontalen userslider.

    ich hatte im javascript den scroll-code von top auf left gestellt,
    alerdings war die user anordnung noch immer übereinander

    wie bekomme ich die angezeigten user nebeneinander?
    find ich das in der php oder in der *.js?

    bin für jede hilfe dankbar. bin mir sicher dass ichs einfach bloß überlesen hab^^

    random_member.php
    <?php 
    #   Copyright by: Manuel Staechele
    #   Support: www.ilch.de
    #   Rendom Member Box Scroller
    #   by OloX THX @ Mairu ;)
    
    defined ('main') or die ( 'no direct access' );
    
    $limit = $allgAr['rmbox_limit']; 
    $teamid = $allgAr['rmbox_teamid'];
    $bgcolor = $allgAr['rmbox_bgcolor'];
    $bodercolor = $allgAr['rmbox_bodercolor'];
    $width = $allgAr['rmbox_width'];
    $height = $allgAr['rmbox_height']; 
    
    echo '<script src="include/includes/js/member_scroller.js" type="text/javascript"></script>';
    
    echo '<style type="text/css">
      #marqueecontainer {
      position: relative;
      left:0;
      width: '.$width.';
      height: '.$height.';
      background-color: '.$bgcolor.';
      overflow: hidden;
      border: 0px solid '.$bodercolor.';
      padding: 0px; }
    </style>';
    
    echo '<div id="marqueecontainer" onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed">
    <div id="vmarquee" style="position: absolute; width: 98%;">';
    				
    if($allgAr['rmbox_teamid'] == 0) {
    $sql = db_query("SELECT id as userid,name,avatar,staat,gebdatum,wohnort FROM prefix_user WHERE 1 ORDER BY rand() LIMIT $limit"); 
    } else {
    $sql = db_query("SELECT b.uid as userid,a.name,a.avatar,a.staat,a.gebdatum,a.wohnort FROM prefix_groupusers b INNER JOIN prefix_user a ON b.uid = a.id WHERE b.gid = $teamid ORDER BY rand() LIMIT $limit");
    }
    
    while ($r = db_fetch_object($sql)) {
    
    if(!empty($r->wohnort)){
        $wohnort = $r->wohnort;
    } else {
        $wohnort = 'n/a';
    }
    
    if(!empty($r->staat)){
        $staat = '<img src="include/images/flags/'.$r->staat.'" border="0"  alt="'.$r->staat.'" title="'.$r->staat.'" />';
    } else {
        $staat = 'n/a';
    }
    
    $avatar = '';
    if ( file_exists($r->avatar)) {
       $avatar = '<img src="'.$r->avatar.'" border="0" alt="'.$r->name.'" title="'.$r->name.'" />';
    } else {
       $avatar = '<img src="include/images/avatars/wurstegal.jpg" border="0" alt="'.$r->name.'" title="'.$r->name.'" />';      
    }
    
    if($r->gebdatum !== "0000-00-00"){
        $gebdatum = date('d.m.Y',strtotime($r->gebdatum));
        $tag   = date('d',strtotime($r->gebdatum));
        $monat = date('m',strtotime($r->gebdatum));
        $jahr  = date('Y',strtotime($r->gebdatum));
        
        $jetzt = mktime(0,0,0,date("m"),date("d"),date("Y"));
        $geburtstag = mktime(0,0,0,$monat,$tag,$jahr);
        $alter   = "(".intval(($jetzt - $geburtstag) / (3600 * 24 * 365)).")";
            
    } else {
        $gebdatum = '';
        $alter = '';
    }    
    
    echo '<div align="center">'.$avatar.'</div><div align="center">'.$staat.' <a href="index.php?user-details-'.$r->userid.'">'.$r->name.'</a> '.$alter.' '.$wohnort.'</a></div><br></br>';
    }
    echo '</div></div>';
    ?>


    member_scroller.js
    /***********************************************
    * Cross browser Marquee II- © Dynamic Drive (www.dynamicdrive.com)
    * This notice MUST stay intact for legal use
    * Visit http://www.dynamicdrive.com/ for this script and 100s more.
    ***********************************************/
    
    var delayb4scroll=1000 // Start Pause (2000=2 Sekunden)
    var marqueespeed=1 // geschwindichkeit ( 1-10)
    var pauseit=1 // Bei Mouseover anhalten (0=no. 1=yes)?
    
    ////NO NEED TO EDIT BELOW THIS LINE////////////
    
    var copyspeed=marqueespeed
    var pausespeed=(pauseit==0)? copyspeed: 0
    var actualheight=''
    
    function scrollmarquee(){
    if (parseInt(cross_marquee.style.left)>(actualheight*(-1)+8))
    cross_marquee.style.left=parseInt(cross_marquee.style.left)-copyspeed+"px"
    else
    cross_marquee.style.left=parseInt(marqueeheight)+8+"px"
    }
    
    function initializemarquee(){
    cross_marquee=document.getElementById("vmarquee")
    cross_marquee.style.left=0
    marqueeheight=document.getElementById("marqueecontainer").offsetHeight
    actualheight=cross_marquee.offsetHeight
    if (window.opera || navigator.userAgent.indexOf("Netscape/7")!=-1){ //if Opera or Netscape 7x, add scrollbars to scroll and exit
    cross_marquee.style.height=marqueeheight+"px"
    cross_marquee.style.overflow="scroll"
    return
    }
    setTimeout('lefttime=setInterval("scrollmarquee()",30)', delayb4scroll)
    }
    
    if (window.addEventListener)
    window.addEventListener("load", initializemarquee, false)
    else if (window.attachEvent)
    window.attachEvent("onload", initializemarquee)
    else if (document.getElementById)
    window.onload=initializemarquee


    betroffene Homepage: schommie.design.tl


    Zuletzt modifiziert von Schommie am 26.09.2012 - 08:40:31
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Ganz so trivial ist das nicht, z.Z. werden die Bilder mit Zeilenumbrüchen (<br>) getrennt, die müsstest du entfernen und über css mit display:inline-block oder float:left; die divs für die User nebeneinander darstellen.

    In dem Javascript müsste aber auch noch mehr angepasst werden, da dann nicht mehr die Höhe sondern die Breite des Elementes von Interesse ist, ggf. suchst du mal nach einem anderen horizontalen Slider (Javascript /jQuery), den man verwenden kann.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Schommie Mitglied
    Registriert seit
    13.06.2008
    Beiträge
    86
    Beitragswertungen
    1 Beitragspunkte
    hat sich erledigt, jetzt sind sie mit dem normalen slider auch zufrieden.
    danke für die hilfe auch wenn ich im grunde nix verstanden hab^^
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Module und Modifikationen

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten