HTML and CSS Reference
In-Depth Information
data.items beschreibt alle Elemente, die sich innerhalb des JSON-Aufrufs befinden.
Mit der Erweiterung media.m sprechen Sie die Bildadresse des Bildes in mittlerer
Größe des jeweiligen Elements an. Zur zufälligen Auswahl eines Elements verwenden
Sie die Funktion Math.random() , die eine Zufallszahl zwischen 0 und 1 generiert und
anschließend mit der Anzahl der Elemente ( data.items.length ) multipliziert.
Math.floor stellt sicher, dass die Zahl abgerundet wird und somit eine ganze Zahl ent-
steht. Ohne eine Zufallsfunktion, würden Sie z. B. das vierte Element folgendermaßen
ansprechen:
randomImage = data.items[4].media.m;
Soweit, so gut. Sie haben nun die Webadresse des Bildes in mittlerer Qualität in der
Variable randomImage gespeichert.
Als Nächstes ersetzen Sie die Größe des Bildes durch eine höher aufgelöste Version.
Denn diese sieht später in Ihrer App schärfer und somit besser aus. Die Bilder von
Flickr sind immer nach folgendem Schema benannt: ID_GRÖSSE.jpg . Als konkretes
Beispiel ein Bild von Florians Fotostream:
2836234208_5e405a7dce_m.jpg
Um eine größere Version zu laden, müssen Sie lediglich den Zusatz _m durch _z erset-
zen. Dies erreichen Sie mit folgendem Code, direkt nach der Definition von random-
Image :
// Das Bild durch eine größere Version ersetzen
var randomImageCorrect = randomImage.replace("_m.jpg", "_z.jpg");
Dabei wird der Inhalt von randomImage mit der JavaScript-Funktion replace auf den
Wert _m.jpg durchsucht. Wenn diese Zeichenfolge gefunden worden ist, wird sie
durch _z.jpg ersetzt. Damit haben Sie nun die Webadresse des großen Bildes in der
Variablen randomImageCorrect gesichert.
Das zufällige Bild als Hintergrundbild des Polaroids definieren
Nun heißt es, das Bild als Hintergrundbild des Containers flickr-bild zu setzen. Wie
schon im Vorhinein erwähnt, hat die Definition des Bildes als Hintergrund den Vor-
teil, dass Sie es leicht und verzerrungsfrei mit CSS auf die Größe des Containers ska-
lieren können. Je nach Format wird dann automatisch an den Rändern etwas
weggeschnitten.
// Das Bild als Hintergrundbild des Containers festlegen
$('.flickr-bild').css("background","url(" + randomImageCorrect + ")");
Search WWH ::




Custom Search