Moorleiche
Ensign
- Registriert
- Sep. 2005
- Beiträge
- 152
Hi,
eigentlich sollte der Thread-Titel "Javascript funktioniert nur bei Haupt-URL" lauten, aber irgendwie ist das dem System nicht aussagekräftig genug.
Ich habe ein kleines "Problem" mit einem Java-Script, das ich auf der Seite eines Freundes integrieren soll.
Eines vorweg: Ich möchte hier nicht über den Sinn und Zweck dieses Scriptes diskutieren, derjenige, der das Sagen hat, will es haben und fertig.
Es ist ein Java-Script, das es in einem bestimmten Bereich der Webseite schneien läßt. Das Problem ist, daß es zwar funktioniert, aber nur unter der Haupt-URL. Das heißt, gebe ich http:/ /www.trallala.xyz ein schneit es. Wenn ich nun z.B. auf den "News"-Button klicke, ändert sich die URL durch das verwendete CMS folgendermaßen: http:/ /www.trallala.xyz/index/news/recent. An der Seite an sich ändert sich nichts, da beim Aufrufen der cleanen URL auch sofort die News angezeigt werden. Der Verweis aud das JS ist auch direkt im Quelltext der News integriert.
Hier ist mal das Script:
Ich bin auch alles andere als der große Java-Script-Guru. Ich hoffe Ihr könnt mir helfen.
Viele Grüße
Moorleiche
eigentlich sollte der Thread-Titel "Javascript funktioniert nur bei Haupt-URL" lauten, aber irgendwie ist das dem System nicht aussagekräftig genug.
Ich habe ein kleines "Problem" mit einem Java-Script, das ich auf der Seite eines Freundes integrieren soll.
Eines vorweg: Ich möchte hier nicht über den Sinn und Zweck dieses Scriptes diskutieren, derjenige, der das Sagen hat, will es haben und fertig.
Es ist ein Java-Script, das es in einem bestimmten Bereich der Webseite schneien läßt. Das Problem ist, daß es zwar funktioniert, aber nur unter der Haupt-URL. Das heißt, gebe ich http:/ /www.trallala.xyz ein schneit es. Wenn ich nun z.B. auf den "News"-Button klicke, ändert sich die URL durch das verwendete CMS folgendermaßen: http:/ /www.trallala.xyz/index/news/recent. An der Seite an sich ändert sich nichts, da beim Aufrufen der cleanen URL auch sofort die News angezeigt werden. Der Verweis aud das JS ist auch direkt im Quelltext der News integriert.
Hier ist mal das Script:
// Copyright (C) 2008 by Fabian Schlieper
// Schnee v1.2
// http://www.fabi.me/
// Ohne dieses Copyright darf dieser Code nicht verwendet werden!
//
// die ID des HTML-Elements, in dem es schneien soll
var snow_area_id = 'winter';
// maximale Anzahl der sichtbaren Schneeflocken
var snow_flake_count = 50;
// die verschiedenen Farbe, die die Schneeflocken haben sollen
var snow_colors = new Array('#AAAACC','#DDDDFF','#CCCCDD','#F3F3F3','#F0FFFF');
// die Schriftarten, aus denen die Schneeflocken bestehen sollen
var snow_fonts = new Array('Arial Black', 'Arial Narrow', 'Times', 'Comic Sans MS');
var snow_char = '*'; // das Zeichen, das als Schneeflocke verwendet wird
var snow_gravity = 0.8; // wie schnell die Schneeflocken fallen
var snow_max_size = 22; // die maximale Schriftgröße einer Schneeflocke
var snow_min_size = 10; // die minimale Schriftgröße einer Schneeflocke
var snow_init_delay = 50; // Verzögerungszeit in Millisekunden, bevor es zu schneien anfängt
// ######################################################################
// HIER ENDET DIE KONFIGURATION. ÄNDERUNGEN IM FOLGENDEN SETZEN JAVSCRIPT-KENNTNISSE VORAUS
// ######################################################################
var snow_init_time = 0;
var snowflakes = new Array();
var snow_area_el = null;
function createSnowflakes()
{
var style = 'position:absolute; top:-' + snow_max_size + 'px; z-index:99;';
for (var i = 0; i <= snow_flake_count; i++)
document.write('<sp' + 'an id="snwflk' + i + '" style="' + style + '">' + snow_char + '</sp' + 'an>');
}
function randInt(range) { return Math.floor(Math.random() * range); }
function initSnow()
{
snow_area_el = document.getElementById(snow_area_id);
// reapeat until we have the snow_area_el
if(!snow_area_el || snow_area_el.offsetWidth <= snow_max_size || snow_area_el.offsetHeight <= snow_max_size) {
// after 5 secs cancel
if(snow_init_time < 5000)
window.setTimeout('initSnow()', 50);
snow_init_time += 50;
return;
}
// offest fix
snow_area_el.style.position = 'relative';
for (var i = 0; i <= snow_flake_count; i++)
{
snowflakes = document.getElementById('snwflk' + i);
snowflakes.size = (randInt(snow_max_size - snow_min_size) + snow_min_size);
snowflakes.posx = -snowflakes.size;
snowflakes.posy = -snowflakes.size;
snowflakes.sink = (snow_gravity * snowflakes.size / snow_min_size);
snowflakes.wobamp = (Math.random() * (snowflakes.size));
snowflakes.wob = 0.0;
snowflakes.wobspeed = (0.03 + Math.random() / 10.0);
snowflakes.style.fontFamily = snow_fonts[randInt(snow_fonts.length)];
snowflakes.style.fontSize = snowflakes.size + 'px';
snowflakes.style.color = snow_colors[randInt(snow_colors.length)];
}
window.setInterval('updateSnow()', 50);
}
function updateSnow()
{
var bl = snow_area_el.offsetLeft;
var bt = snow_area_el.offsetTop;
var bw = snow_area_el.offsetWidth;
var bh = snow_area_el.offsetHeight;
var br = bl + bw;
var bb = bt + bh;
for (var i = 0; i <= snow_flake_count; i++)
{
snowflakes.wob += snowflakes.wobspeed;
var x = snowflakes.posx + (snowflakes.wobamp * Math.sin(snowflakes.wob));
snowflakes.posy += snowflakes.sink;
snowflakes.style.left = Math.round(x) + 'px';
snowflakes.style.top = Math.round(snowflakes.posy) + 'px';
var s = snowflakes.size;
// check bounds
if (snowflakes.posy > (bb - s) || x < bl || x > (br - s))
{
snowflakes.posx = bl + s + randInt(bw - (3 * s));
if(snowflakes.posy < 0)
snowflakes.posy = bt + randInt(bh - 2 * s);
else
snowflakes.posy = bt;
}
}
}
// Schnee initialisieren
createSnowflakes();
window.setTimeout('initSnow()', Math.max(50, snow_init_delay));
Ich bin auch alles andere als der große Java-Script-Guru. Ich hoffe Ihr könnt mir helfen.
Viele Grüße
Moorleiche