Problem beim Einbauen von Schneeflocken

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
AllOutAnime
Mitglied
Beiträge: 25
Registriert: 01.09.2007 19:54
Kontaktdaten:

Problem beim Einbauen von Schneeflocken

Beitrag von AllOutAnime »

Ich wollte über die Weihnachtszeit Schneeflocken in mein phpBB Forum einbauen. Das script habe ich in die overall_header.html Datei im Template Ordner geschrieben, doch die Schneeflocken kleben nur links oben in der Ecke. Kann mir jemand helfen, das einzubauen, dass es auch funktioniert?

Code von den Schneeflocken:

Code: Alles auswählen

function getCookie(name) {
    var arg = name + '=';
    var alen = arg.length;
    var clen = document.cookie.length;
    var i = 0;
    while (i < clen) {
      var j = i + alen;
      if (document.cookie.substring(i, j) == arg)
    {
      var endstr = document.cookie.indexOf(";", j);
      if (endstr == -1)
        endstr = document.cookie.length;
      return unescape(document.cookie.substring(j, endstr));
     }
     i = document.cookie.indexOf(' ', i) + 1;
       if (i == 0) break;
    }
    return null;
  }
  
  function hasApp()
  {
   var vals = String(getCookie('LYC')).split("&");
   for (var i = 0; i < vals.length; i++)
   {
      var keyval = vals[i].split("=");
       if (keyval[0] == "lc")
       {
     var lcvals = keyval[1].split(",");
     return (lcvals[3] == "1");
      }
   }
   return (getCookie('lcApp') == "1");
  }
   
  function launchRadio (clientStationID, playlistType, playlistModifier, djID, otherParams) {
  
   var windowName = self.name;
   if (windowName == '') {
    windowName = 'LaunchRadioTarget';
    self.name = windowName;
   }
   var path = "http://launchcast.launch.yahoo.com/radio/player/";
   var qs = 'clientID=1&clientStationID=' + clientStationID + '&p=' + playlistType + '&m=' + playlistModifier + '&d=' + djID + '&linkTarget=' + windowName;
   if (arguments[4] != null) qs += '&' + arguments[4];
   if (hasApp())
    window.top.location = path + 'createLCP.asp?appmode=0&closeWarning=0&' + qs;  
   else
    radioWin = window.open(path + 'default.asp?' + qs, 'playerWindow', 'HEIGHT=' + (document.layers ? 314 - 30 : 314) + ',WIDTH=' + (document.layers ? 390 - 10 : 390));
  }
function rnd(){return Math.random();}
function xRnd(){return (rnd()/10);}
function yRnd(){return (2 + 2*( .5 - rnd() ));}
var letitsnow = true;
var flakes = Array("snflake1.png","snflake2.png","snflake3.png","snflake4.png", "snflake5.png", "snflake6.png", "snflake7.png");
var numflakes = 15;
var T = 35;
var dx, xPos, yPos, am, vx, vy, obj, i;
var winwidth = 640;
var winheight = 480;

function sizeIt()
{
window.winwidth = window.innerWidth?window.innerWidth:document.body.clientWidth;
window.winheight = window.innerHeight?window.innerHeight:document.body.clientHeight;
}

dx = new Array();
xPos = new Array();
yPos = new Array();
sway = new Array();
var swaymax = 20;
vx = new Array();
vy = new Array();
sizeIt();
document.write("<STYLE type=\"text/css\">\n.flk {position:absolute;top:-100;}<\/STYLE>");
for (i = 0; i < numflakes; i++)
{
	var thisflake = "" + flakes[Math.floor(rnd()*flakes.length)];
	dx[i] = 0;
	
	xPos[i] = rnd()*(window.winwidth-30) +10;
	yPos[i] = rnd()*window.winheight;
	sway[i] = rnd()*swaymax;
	vx[i] = xRnd();
	vy[i] = yRnd();
	document.write("<div id=\"f"+ i +"\" class=\"flk\"><img src=\"");
	document.write(thisflake + "\" border=\"0\"><\/div>");
}


function snowMove(id,left,top)
{
	obj = document.getElementById?document.getElementById(id).style:
	document.all?document.all[id].style:
	document.layers?document.layers[id]:null;
	if (obj)
	{
		obj.left=left;
		obj.top=top;
	}
}

function snowSwitch(s)
{
	if ( s == "on" )
	{
		if ( window.letitsnow != true )
		{	
			window.letitsnow = true;
			doSnow();
		}
	} else if ( s == "off" )
	{
		window.letitsnow = false;
		hideSnow();
	}
}

function hideSnow()
{
	for (i = 0; i < numflakes; ++ i) {
		snowMove("f"+i,-100,-100);
	}
}

function doSnow() {
if (letitsnow){
	sizeIt();
	delta = (window.pageYOffset!=null)?window.pageYOffset:document.body.scrollTop;
	for (i = 0; i < numflakes; ++ i) {
		yPos[i] += vy[i];
		if (yPos[i] > window.winheight+delta-50) {
			xPos[i] = rnd()*(window.winwidth-sway[i]-30);
			yPos[i] = delta;
			vx[i] = xRnd();
			vy[i] = yRnd();
		}
		dx[i] += vx[i];
		snowMove("f"+i,xPos[i]+sway[i]*Math.cos(dx[i]),yPos[i]);
	}
	setTimeout("doSnow()", T);
}	
}

window.onload=doSnow;
Url zum Forum, wo ihr es sehr gut live sehen könnt :evil: animefanboard.de

danke schonmal.
michael-88
Mitglied
Beiträge: 69
Registriert: 15.12.2004 19:30
Kontaktdaten:

Beitrag von michael-88 »

hmmmm......

joa, also in Opera scheint es zu funktionieren

mfg

topo

ansonsten glaub ich kenn ich den code und eig. müsste der in mehr als nur opera funzen...

funzt er denn im Ie / FF wenn du denn mal auf einer Seite ohne phpBB einbindest
visit => CAZ
AllOutAnime
Mitglied
Beiträge: 25
Registriert: 01.09.2007 19:54
Kontaktdaten:

Beitrag von AllOutAnime »

Jup, ohne phpBB geht er bei allen Browsern, siehe hier
Mit dem IE7 sieht man im board überhaupt keinen Schnee
Benutzeravatar
redbull254
Ehemaliges Teammitglied
Beiträge: 10379
Registriert: 05.01.2006 13:01
Kontaktdaten:

Beitrag von redbull254 »

Hallo,erstmal


nimm doch diesen hier,der funktioniert mit Sicherheit.

http://www.dynamicdrive.com/dynamicindex3/snow.htm

Braucht nur den Code kopieren, die Dir passende Schneeflocke runterladen,den Pfad zur Schneeflocke anzupassen und alles in die overall_header.html einzusetzen. Ich habe das gerade gemacht, 5 Minuten Arbeit und alles funktioniert. :wink:
Beste Grüße
Walter
AllOutAnime
Mitglied
Beiträge: 25
Registriert: 01.09.2007 19:54
Kontaktdaten:

Beitrag von AllOutAnime »

das sieht aber so eintönig aus kann man auch mehrere Schneeflocken angeben? Ich frag mich wieso der Andere nicht im board funktioniert...
Benutzeravatar
Kendoo
Mitglied
Beiträge: 125
Registriert: 29.09.2007 03:44

Beitrag von Kendoo »

das Script gehört nicht in den Head Bereich sondern in den Body, also wenn Du es in die overall_footer einbaust, sollte es klappen
AllOutAnime
Mitglied
Beiträge: 25
Registriert: 01.09.2007 19:54
Kontaktdaten:

Beitrag von AllOutAnime »

Wenn ich es in den overall_footer einbaue kleben die Schneeflocken über dem logo :cry:
JuSc<l
Mitglied
Beiträge: 323
Registriert: 20.11.2007 15:53
Wohnort: Heilbronn
Kontaktdaten:

Beitrag von JuSc<l »

AllOutAnime:

Im IE7 funkzt alles! Bei deinem Link :)
AllOutAnime
Mitglied
Beiträge: 25
Registriert: 01.09.2007 19:54
Kontaktdaten:

Beitrag von AllOutAnime »

Hmm hab den code mal geändert, es gab den gleichen nur bisschen anders drum gehts jetzt im IE. So aber im FF gehts immer noch nicht. auf ner normalen HTML Seite gehts aber auch im FF.
Hmm komisch hat jemand ne Idee woran das liegen kann?

EDIT: So hab noch ein Anderes probiert, das geht im FF im board auch nicht.

Code: Alles auswählen

var no = 20;                   // number of snowflakes
var speed = 10;                // the smaler, the faster snowflakes
var snowflake ="snflake5.png";    // picture source
var ns4b = (document.layers) ? 1 : 0;   // Netscape4.x
var b4up = (document.all) ? 1 : 0;      // MSIE4, Opera5, Netccape5
var dx, xp, yp;                // coordinate and position variables
var am, stx, sty;              // amplitude and step variables
var snowobj;
var i, doc_width = 800, doc_height = 600;

if (ns4b) {
   doc_width  = self.innerWidth;
   doc_height = self.innerHeight;
} else if (b4up) {
   doc_width  = document.body.clientWidth;
   doc_height = document.body.clientHeight;
} else {
   b4up = 1;                   // 800x600 screen-default
}// if

dx = new Array();
xp = new Array();
yp = new Array();
am = new Array();
stx = new Array();
sty = new Array();
snowobj = new Array();

for (i=0; i<no; ++i) {         // iterate for every snowflake
   dx[i] = 0;                  // set coordinate variables
   xp[i] = Math.random()*(doc_width-50); // set position variables
   yp[i] = Math.random()*doc_height;
   am[i] = Math.random()*20;             // set amplitude variables
   stx[i] = 0.02 + Math.random()/10;     // set step variables
   sty[i] = 0.7 + Math.random();         // set step variables
   if (ns4b) {                           // set layers
      document.write("<LAYER NAME=\"flake"+ i +"\" LEFT=\"15\" "
      + "TOP=\"15\" VISIBILITY=\"show\"><IMG SRC=\""
      + snowflake +"\" BORDER=0></LAYER>");
   } else if (b4up) {
      document.write("<DIV ID=\"flake"+ i +"\" STYLE=\""
      + "position:absolute; z-index:"+ i +"; visibility:visible; "
      + "top:15px; left:15px;\"><IMG SRC=\""+ snowflake
      + "\" BORDER=0></DIV>");
      snowobj[i] = eval (document.getElementById("flake"+i).style);
   }//if
}//for

function snowNS() {            // Netscape4 main animation function
   for (i=0; i<no; ++i) {      // iterate for every snowflake
      yp[i] += sty[i];
      if (yp[i] > doc_height-50) {
         xp[i] = Math.random()*(doc_width-am[i]-30);
         yp[i] = 0;
         stx[i] = 0.02 + Math.random()/10;
         sty[i] = 0.7 + Math.random();
      }//if
         dx[i] += stx[i];
         document.layers["flake"+i].top = yp[i];
         document.layers["flake"+i].left = xp[i] 
            + am[i]*Math.sin(dx[i]);
      }//for
   setTimeout("snowNS()", speed);
}//snowNS

function snowDocument() {      // MSIE4, Opera5, Netscape5 main
   for (i=0; i<no; ++i) {      // iterate for every flake
      yp[i] += sty[i];
      if (yp[i] > doc_height-50) {
         xp[i] = Math.random()*(doc_width-am[i]-30);
         yp[i] = 0;
         stx[i] = 0.02 + Math.random()/10;
         sty[i] = 0.7 + Math.random();
      }//if
      dx[i] += stx[i];
      snowobj[i].top  = yp[i];
      snowobj[i].left = xp[i] + am[i]*Math.sin(dx[i]);
   }//for
   setTimeout("snowDocument()", speed);
}//snowDocument

if (ns4b) {                   // Netscape4
   snowNS();
} else if (b4up) {            // MSIE4, Opera5, Netscape5
   snowDocument();
}//if
das Script von redbull254 funktioniert, allerdings hören die Schneeflocken da auch schon nach 1/3 auf :evil:
Zuletzt geändert von AllOutAnime am 30.11.2007 18:29, insgesamt 1-mal geändert.
Benutzeravatar
Kendoo
Mitglied
Beiträge: 125
Registriert: 29.09.2007 03:44

Beitrag von Kendoo »

da fehlen die px Angaben im Script, werd das gleichmal testen und Dir den Code dann geändert posten
Antworten

Zurück zu „[3.0.x] Mod Support“