Slideshow mit Scriptaculous

Webentwicklung |  1 Kommentar

Die Slideshow basiert auf Prototype sowie Scriptaculous und ermöglicht verschiedene Instanzen. Die Darstellung erfolgt über eine unsortierte Liste. Dadurch ist es möglich neben Bildern und Fotos auch anderen HTML-Code wie auch einfache Texte darzustellen.

Hier das Beispiel wie die Galerie umgesetzt ist.

Das Javascript zur Slideshow:

  1. function init() {
  2.  
  3.   var slides = document.getElementsByClassName('slide-show');
  4.  
  5.   for(i=0;i<slides.length;i++){
  6.  
  7.     var lis = $(slides[i].id).getElementsByTagName('li');
  8.  
  9.     for( j=0; j < lis.length; j++){
  10.       if(j!=0){
  11.         lis[j].style.display = 'none';
  12.       }
  13.     }
  14.     end_li = lis.length -1;
  15.  
  16.     setTimeout(swapElements(0,0,end_li, 3000, lis), 2000);
  17.   }
  18. }
  19.  
  20. function swapElements(cur_li, start_li, end_li, delay, lis) {
  21.  
  22.   return (function() {
  23.     Effect.Fade(lis[cur_li],{ duration:3, from:1.0, to:0.0 });
  24.  
  25.       if (cur_li == end_li) {
  26.         cur_li = start_li;
  27.       } else {
  28.         cur_li++;
  29.       }	
  30.  
  31.       Effect.Appear(lis[cur_li], { duration:3, from:0.0, to:1.0 });
  32.  
  33.       setTimeout(swapElements(cur_li,start_li,end_li,delay,lis),
  34.       delay + 3000);
  35.     }
  36.   )
  37. }
  38.  
  39. Event.observe(window, 'load', init, false);

Alle Elemente mit der Klassendefinition ‘slide-show‘ werden durchlaufen und für jedes Listenelement werden die Bilder nacheinander ausgewechselt.

Damit die Positionierung der Galerie bei den Überblendeffekten sichergestellt ist empfiehlt es sich, einige Anpassungen im CSS vorzunehmen.

Der CSS-Code:

  1. .slide-show li{
  2.  
  3. position:absolute;
  4.  
  5. list-style:none;
  6. display:block;
  7. width:200px;
  8. height:200px;
  9. overflow:hidden;
  10. }

Wichtig dabei ist, dass die Listenelemente absolut positioniert werden damit sie beim wechseln eine feste Position behalten und nicht verschoben werden.

Die Ausgabe der Slideshow erfolgt, wie schon gesagt, über eine unsortierte Liste.

Der HTML-Code dafür ist folgender:

  1. <ul id="my_slide_show" class="slide-show">
  2. <li><img src="1.jpg" alt="first image"/></li>
  3. <li><img src="2.jpg" alt="second image"/></li>
  4. <li>Lorem ipsum dolor sit amet, consetetur sadipscing elitr...</li>
  5. </ul>

Da das Javascript auf alle Objekte mit der Klassendefinition ‘slide-show‘ zugreift, muss diese Angabe im HTML-Code mit der Klasse aus dem Javascript übereinstimmen.

Beispielcode herunterladen
Dateigröße: 69KB | Dateityp: .zip

share and enjoy
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Diigo
  • FriendFeed
  • Identi.ca
  • LinkedIn
  • Technorati
  • Twitter
  • Posterous
  • StumbleUpon

Social Bookmark Dienste

Allgemein |  Kommentare deaktiviert

Nachdem ich neulich über twitter zu Toms neuer Seite geleitet wurde, entdeckte ich nicht nur das neue und ziemlich ansprechende Layout, sondern eine ziemlich sinnvolles Feature. Nämlich die Möglichkeit Beiträge in anderen Netzwerken zu verbreiten und Freunden zu schicken!

Wie versprochen habe ich nun auch mal etwas aufgerüstet. Nun besteht auch auf pixelspace.org die Möglichkeit, Artikel über verschiedene Social Bookmark Dienste zu speichern und Freunden zu empfehlen. Somit können die ~3 Besucher, die hier zufällig mal landen auch einen Eintrag ganz bequem weiterleiten. Bleibt nur noch das eine Problemchen mit dem Inhalt. Bislang hab ich einfach nicht die Zeit gefunden oder mir die Zeit genommen um ausführliche Einträge zu verfassen. Irgendwie komm ich mir blöd dabei vor, etwas komplett unbedeutendes zu posten.

Mal sehen wie sich das in Zukunft so entwickelt.

share and enjoy
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Diigo
  • FriendFeed
  • Identi.ca
  • LinkedIn
  • Technorati
  • Twitter
  • Posterous
  • StumbleUpon

Kleines Update im CG Bereich

Computergraphik |  Keine Kommentare

Sooo mal wieder ein kleines Update, ich hab mal das Modell eines russischen Angriffs-und Transporthelikopters hochgeladen die vorläufige Bildergalerie zur Mi-Mil 24 gibt es hier.

Kommentare und Kritik sind wie immer gern gesehen, wenn Interesse am Modell besteht, einfach bei mir melden. Derzeit komme ich leider nicht dazu es weiter zu bearbeiten.

share and enjoy
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Diigo
  • FriendFeed
  • Identi.ca
  • LinkedIn
  • Technorati
  • Twitter
  • Posterous
  • StumbleUpon

Chicago 2008

Allgemein |  2 Kommentare

Endlich hab ich es geschafft einige Bilder vom Aufenthalt in Chicago hochzuladen.

share and enjoy
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Diigo
  • FriendFeed
  • Identi.ca
  • LinkedIn
  • Technorati
  • Twitter
  • Posterous
  • StumbleUpon

PHP: Link zum Twitter User generieren

Webentwicklung |  Keine Kommentare

Ich hab hier mal eine simple PHP-Funktion geschrieben, die es ermöglicht @user-Tags in Links umzuwandeln. Die Funktion sucht nach Zeichen die mit @ beginnen und ersetzt die Zeichenkette durch einen Link zum Twitterprofil des Nutzers. Es ist zwar nicht viel und durchaus erweiterbar aber vielleicht hilft es ja dem ein oder anderen.

  1. <?php
  2. function parseContent($content){
  3.   $content_array = split(' ',$content);
  4.   $result = null;
  5.   if(sizeof($content_array)>0){
  6.     foreach($content_array as $str){
  7.       if(preg_match("|@[a-zA-Z_0-9-]*|",$str)){
  8. 	$str = str_replace($str,'<a href="http://twitter.com/' .
  9.                substr($str,1,strlen($str)).'">'.$str.'</a>',$str);
  10.       }
  11.       $result .= ' '.$str;
  12.      }
  13.    }
  14.    return trim($result);
  15. }
  16. ?>

Für Tags kann dieser Codeschinpsel ebenfalls verwendet werden, es müsste lediglich @ mit # ersetzt werden und die erlaubten Zeichen überprüft werden.

share and enjoy
  • Digg
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Diigo
  • FriendFeed
  • Identi.ca
  • LinkedIn
  • Technorati
  • Twitter
  • Posterous
  • StumbleUpon