Strona 1 z 1

Preloader Forum

: sob wrz 13, 2003 11:03 am
autor: Bartosz Olszewski
Jak się wchodzi na podforum to pojawia się komunikat " Ładuje stronę...Proszę czekać" i taka mina. Uważam, że tę minę można byłoby zastąpić Preloaderem, napewno by to wyglądało estetyczniej.

Re: Preloader Forum

: sob wrz 13, 2003 8:29 pm
autor: Tomasz Sieniek
Gotowe, juz jest estetyczniej ;)

Re: Preloader Forum

: sob wrz 13, 2003 8:46 pm
autor: Bartosz Olszewski
I oto Polska walczyła... Wtedy z tą minką wyglądało tak dziecinnie, a wątpie aby to było Forum dla dzieci tylko porządnych, cywilizowanych, kulturalnych, miłych (trochę epitetów :) ) ludzi. :) Dziękuje za uwzględnienie mojej uwagi!

Re: Preloader Forum

: ndz wrz 14, 2003 10:06 am
autor: budek vel. fu3ak
fajnie by było gdyby preloader odmierzał prawdziwe załadowanie strony

Re: Preloader Forum

: ndz wrz 14, 2003 10:11 am
autor: Bartosz Olszewski
Hm. Tak też jest dobrze fakt, że można byłoby poprawić estetyke napisów w preloaderze :)

"
Ładuję Stronę...
Proszę Czekać

{Prealoder}
Zamknij
"

Tak by wyglądało ładniej :)

Re: Preloader Forum

: ndz wrz 14, 2003 10:21 am
autor: budek vel. fu3ak
ale przy wolnym łączu widze ze juz 90% a tu zonk bo preloader od nowa idzie
juz lepiej z tą mordką - przyzwyczailem sie :o

Re: Preloader Forum

: ndz wrz 14, 2003 10:31 am
autor: Bartosz Olszewski
Można byłoby zrobić prawdziwy preloader, zawsze lepiej by to wyglądało, ale to jest tak zwana prowizorka :wink:

To już zależy od umiejętności administratorów. Jeżeli da się zrobić preloader prawdziwy to czas go zrobić :)

Re: Preloader Forum

: ndz wrz 14, 2003 11:06 am
autor: KaRoL
A ja proponuję inne rozwiązanie. Umieścić w Profilu opcję włączania i wyłączania preloadera. Mnie on strasznie denerwuje i zawsze klikam na zamknij. Gdyby zastosować takie coś, osoby które chciałyby mieć preloader mogłyby go sobie wybrać z listy. To chyba najkorzystniejsze.

Re: Preloader Forum

: ndz wrz 14, 2003 11:10 am
autor: Bartosz Olszewski
Można i tak, ale trzeba brać też umiejętności Webinside.pl. Pamiętaj, że każdemu łatwo się mówi, a drugiemu ciężej się robi. Dlatego poczekajmy może administratorzy coś wprowadzą co nas zadowoli :)

Re: Preloader Forum

: ndz wrz 14, 2003 11:21 am
autor: Wojciech Kocjan
Tak sie akurat sklada ze preloader jest modem do phpbb, nienapisanym przez ekipe Webinside.pl, ale przez jakiegos innego tworce ;)

Napisac 'rzeczywisty' preloader (odmierzajacy % zaladowania) byloby raczej ciezko, ja sie przynajmniej na tym nie znam..

Re: Preloader Forum

: ndz wrz 14, 2003 11:26 am
autor: KaRoL
To dobrze, bo ja mam wstręt do preloaderów... :wink:

Re: Preloader Forum

: ndz wrz 14, 2003 1:57 pm
autor: Wojciech Jurewicz
A po co te wszystkie udziwnienia??? W najlepszym przypadku opóźnia czas ładowania strony. Uważam że jak ktos daje propozycję to i rozwiązanie... Tak jak ja to zrobiłem z kolorowaniem składni. Jeżeli ktos z was znajdzie lub napisze preloader który się nam spodoba to pomyslimy nad dołączeniem go do forum.

Re: Preloader Forum

: ndz wrz 14, 2003 2:05 pm
autor: KaRoL
W head:

Kod: Zaznacz cały

<script language="JavaScript1.2">
<!-- begin hiding
// (C) 2000 Marcin P Wojtowicz [[email protected]]. All rights reserved.
// Obtain permission before selling/redistributing in any medium.

startingColor = new Array() // <-- Do not modify!
endingColor = new Array() // <-- Do not modify!

// YOU MAY MODIFY THE FOLLOWING:
var yourImages = new Array("OBRAZEK","OBRAZEK","OBRAZEK","OBRAZEK") // Fill this array with the images you wish to preload
var locationAfterPreload = "STRONA, KTÓRA MA SIĘ OTWORZYĆ" // The script will redirect here when the preloading finishes *successfully*
var preloadbarWidth = 250 // The length of the preload bar. Should be greater than total amount of images you want to preload!
var preloadbarHeight = 15 // The height of the gradient/preload bar
var backgroundOfGradient = "#FFFFFF" // Default color while the preload bar is "filling up"

// Color the preloadbar is starting with - enter 1st, 3rd and 5th numbers/letters of color code
startingColor[0] = "0" 
startingColor[1] = "0"
startingColor[2] = "0"

// Color the preloadbar is going to end up with - enter the 1st, 3rd and 5th numbers/letters of color code
endingColor[0] = "0"
endingColor[1] = "0"
endingColor[2] = "0"

// FOR TROUBLESHOOTING:
var gap = 5 // PLAY AROUND WITH THIS SETTING IF YOU GET A JAVASCRIPT ERROR!!! 2 is the minumum value!!!


// DO NOT MODIFY ANYTHING BEYOND THIS POINT!!!

if (!document.all) location.replace(locationAfterPreload)
var a = 10, b = 11, c = 12, d = 13, e = 14, f=15, i, j, ones = new Array(), sixteens = new Array(), diff = new Array();
var convert = new Array("0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"), imgLen = yourImages.length;
var loaded = new Array(), preImages = new Array(), currCount = 0, pending = 0, h = 0, hilite = new Array(), cover = new Array();
var num = Math.floor(preloadbarWidth/gap);
for (i = 0; i < 3; i++) {
	startingColor[i] = startingColor[i].toLowerCase();
	endingColor[i] = endingColor[i].toLowerCase();
	startingColor[i] = eval(startingColor[i]);
	endingColor[i] = eval(endingColor[i]);
	diff[i] = (endingColor[i]-startingColor[i])/num;
	ones[i] = Math.floor(diff[i]);
	sixteens[i] = Math.round((diff[i] - ones[i])*15);
}
endingColor[0] = 0;
endingColor[1] = 0;
endingColor[2] = 0;
i = 0, j = 0;
while (i <= num) {
	hilite[i] = "#";
	while (j < 3) {
		hilite[i] += convert[startingColor[j]];
		hilite[i] += convert[endingColor[j]];
		startingColor[j] += ones[j];
		endingColor[j] += sixteens[j];
		if (endingColor[j] > 15) {
			endingColor[j] -= 15;
			startingColor[j]++;
		}
		j++;
	}
	j = 0;
	i++;
}
function loadImages() {
	for (i = 0; i < imgLen; i++) {
		preImages[i] = new Image();
		preImages[i].src = yourImages[i];
		loaded[i] = 0;
		cover[i] = Math.floor(num/imgLen)*(i+1)
	}
	cover[cover.length-1] += num%imgLen
	checkLoad();
}
function checkLoad() {
	if (pending) { changeto(); return }
	if (currCount == imgLen) { location.replace(locationAfterPreload); return }
	for (i = 0; i < imgLen; i++) {
		if (!loaded[i] && preImages[i].complete) {
			loaded[i] = 1; pending++; currCount++;
			checkLoad();
			return;
		}
	}
	setTimeout("checkLoad()",10);
}
function changeto() {
	if (h+1 > cover[currCount-1]) {
		var percent = Math.round(100/imgLen)*currCount;
		if (percent > 100) while (percent != 100) percent--;
		if (currCount == imgLen && percent < 100) percent = 100;
		defaultStatus = "Załadowano " + currCount + " z " + imgLen + " grafik [" + percent + "%].";
		pending--;
		checkLoad();
		return;
	}
	eval("document.all.cell" + (h+1) + ".style.backgroundColor = hilite[h]");;
	h++;
	setTimeout("changeto()",1);
}
defaultStatus = "Załadowano 0 z " + imgLen + " grafik [0%]."
// end hiding -->
</script>
W body:

Kod: Zaznacz cały

<script language="JavaScript1.2">
<!-- beging hiding
document.write('<table border="0" cellpadding="0" cellspacing="0" width="' + preloadbarWidth + '"><tr height="' + preloadbarHeight + '" bgcolor="' + backgroundOfGradient + '">');
for (i = 0; i < num; i++) {
	document.write('<td width="' + gap + '" id="cell' + (i+1) + '"></td>');
}
document.write('</tr></table>');
document.write('<p><small>    </small></p></font>')
loadImages();
// end hiding -->
</script>
Na pewno da się go przerobić pod PHP.