04.06.2013 |
Selbi
Great and Powerful
Beiträge: 424
Registriert seit: 23. Mär 2013
|
Zufälliger Bronies.de Banner (JavaScript Optimierung)
Ich habe das Wunderkind namens Greasemonkey entdeckt, welches selbst geschriebene JavaScripts auf Seiten einbettet. Nur dadurch habe ich jemals versucht, der Sprache eine Chance zu geben.
Bronies.de blieb nicht verschont. Finde den Fehler:
Tipp: Banner und Datum.
Über die gesamte Dauer der Banner-Challenge habe ich mich gewundert, warum das Banner sich bei mir nie ändert. Irgendwann habe ich dann begriffen, dass es am Chrysalis Design lag.
Also habe ich dann vor Kurzem ein Skript entwickelt, das einen zufälligen Banner (von allen offiziellen und in die Challenge eingereichten Bannern) und ein zufälliges Hintergrunddesign auswählt:
Code:
// ==UserScript==
// @name Random Banner
// @namespace Selbi
// @include *www.bronies.de*
// @version 1
// ==/UserScript==
var RandomBanner = 1;
var RandomBG = 1;
var ForcedBanner = -1;
var ForcedBG = -1;
// -------------
if (RandomBanner == 1) {
var bannerlist = new Array(
"http://www.bronies.de/images/sweetdreams/bannerdo.png",
"http://www.bronies.de/images/sweetdreams/logochrysalis.png",
"http://www.bronies.de/images/sweetdreams/logobroniesde.png",
"http://www.bronies.de/images/sweetdreams/logo.png",
"http://www.bronies.de/images/sweetdreams/logoluna.png",
"http://www.bronies.de/images/sweetdreams/galalogo.png",
"http://i.imgur.com/xIZpsrW.png",
"http://i.imgur.com/N2sT5pv.png",
"http://i.imgur.com/kAYkXXw.png",
"http://i.imgur.com/qI80HsP.png",
"http://i.imgur.com/PwyATx3.png",
"http://i.imgur.com/EdNagOr.png",
"http://i.imgur.com/FIH6ZpS.png",
"http://i.imgur.com/5vNsadw.png",
"http://i.imgur.com/eeWAbAf.png",
"http://i.imgur.com/ZREB4oW.png"
);
if (ForcedBanner != -1) {
var rnd1 = ForcedBanner;
} else {
var rnd1 = Math.floor(Math.random() * bannerlist.length);
}
var bannerdiv = document.getElementsByClassName("logo")[0];
bannerdiv.innerHTML = '<a href="http://www.bronies.de/index.php"><img src="' + bannerlist[rnd1] + '" alt="Bronies.de" title="Bronies.de" style="padding-right: 1px;" /></a>';
}
// -------------
if (RandomBG == 1) {
var bglist = new Array(
"http://www.bronies.de/images/sweetdreams/bg2blue.png",
"http://www.bronies.de/images/sweetdreams/daringbg.jpg",
"http://www.bronies.de/images/sweetdreams/galaconstars2.png",
"http://www.bronies.de/images/sweetdreams/outerbgluna.jpg",
"http://www.bronies.de/images/sweetdreams/bg2.jpg",
"http://www.bronies.de/images/sweetdreams/bg-party.png"
);
if (ForcedBG != -1) {
var rnd2 = ForcedBG;
} else {
var rnd2 = Math.floor(Math.random() * bglist.length);
}
var bgimg = document.createElement('style');
bgimg.innerHTML = 'body {background: #AE80BB url(' + bglist[rnd2] + ');}';
document.body.appendChild(bgimg);
}
An sich funktioniert das Ding einwandfrei, aber da ich noch neu in der Masche bin, würde ich gerne von einem etwas erfahreneren Mitglied wissen, ob der Code optimiert genug ist, oder ob man da noch mehr Leistung rausquetschen kann.
Wenn ich so etwas mache, will ich es auch gleich richtig lernen und mir keine falschen Angewohnheiten zulegen und nicht als Script Kiddie enden (looking at you, Visual Basic...).
|
|
|
05.06.2013 |
Quad
Teamspeak-Staff
Beiträge: 952
Registriert seit: 26. Mär 2013
|
RE: Zufälliger Bronies.de Banner (JavaScript Optimierung)
Es beantwortet deine Frage zwar kein bisschen, aber die Idee ist gut. Ich habe das einfach mal bei mir installiert.
Ob du das alles optimal gemacht hast lasse ich lieber andere bewerten.
*nochmal kurz nachseh*
Eine Sache ist mir doch aufgefallen: Du verwendest aus irgendeinem Grund nicht true und false sondern 1 und -1.
Diese Signatur enthält ← Links←
|
|
|
05.06.2013 |
Selbi
Great and Powerful
Beiträge: 424
Registriert seit: 23. Mär 2013
|
RE: Zufälliger Bronies.de Banner (JavaScript Optimierung)
(05.06.2013)Quad schrieb: *nochmal kurz nachseh*
Eine Sache ist mir doch aufgefallen: Du verwendest aus irgendeinem Grund nicht true und false sondern 1 und -1.
Gehirnfurz ahoi! Keine Ahnung, wie ich das vergessen habe.
Danke!
|
|
|