Autor | Zpráva | ||
---|---|---|---|
kowboy Profil * |
#1 · Zasláno: 8. 5. 2008, 10:50:15
Zdravím všechny,
na několika webech jsem se setkal se zápisem: function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}} } Co přesně tento kód dělá? Je to nějaký JavaScriptový preloader obrázků? Chtěl jsem jej také použít, ale validátor mi "nevezme" indexOf("#"). Tedy ten hash. Může mi někdo poradit prosím? Díky moc všem |
||
peta Profil |
#2 · Zasláno: 8. 5. 2008, 15:57:28
function MM_preloadImages() { //v3.0
var d=document; // d prirad window.document, coz jsou vsechny objekty v body, obvykle a neco dalsiho... if(d.images) // jestlize existuje pole images, coz je pole se vsemi obrazky v body { if(!d.MM_p) // to je nejaka promenna, kterou tu nemas uvedenu d.MM_p=new Array(); // a kdyz neexistuje, tak ji vytvor jako pole var i, j=d.MM_p.length, // do j dej delku pole d.MM_p a=MM_preloadImages.arguments; // do pole A dej argumenty funkce, cili funkce(1,2,33) -> a = [1,2,33] for(i=0; i<a.length; i++) // cykus pro vechny prvky v A if (a[i].indexOf("#")!=0) // hledej v retezci z polozky pole a[i] retezec s krizek a pokud tam je { d.MM_p[j]=new Image; // pridej do MM novy obrazek d.MM_p[j++].src=a[i]; // a nastav jeho src podle retezce v a[i] }} } Jinymi slovy, podle toho, co zadas do argumentu ti udela preload obrazku. Neni mi jasne, proc tam hleda krizek, ale nevim, jak vypada pole arguments, protoze jsem to nepouzival. |
||
kowboy Profil * |
#3 · Zasláno: 8. 5. 2008, 16:29:08
to tedy znamená, že pokud dám místo # název img, bude mi to načítat vše s retězcem img? Nebo to chápu úplně špatně? :-)
|
||
kowboy Profil * |
#4 · Zasláno: 8. 5. 2008, 20:08:24
Neví prosím někdo? Jak s tím křížkem? Uvádí se něco místo něj nebo ne?
|
||
los Profil * |
#5 · Zasláno: 8. 5. 2008, 20:16:30
> Co přesně tento kód dělá?
Nahrá obrázky z URL, ktoré dostane ako svoje argumenty, pričom ignoruje URL začínajúce znakom #. > Je to nějaký JavaScriptový preloader obrázků? Áno. > Chtěl jsem jej také použít, ale validátor mi "nevezme" indexOf("#"). Tedy ten hash. > Může mi někdo poradit prosím? Validátor s tým nemá problém. > to tedy znamená, že pokud dám místo # název img, bude mi to načítat vše s retězcem img? Ak nahradíš znak # reťazcom img, bude to ignorovať všetky URL začínajúce reťazcom img. > Neví prosím někdo? Jak s tím křížkem? Uvádí se něco místo něj nebo ne? Kľudne tú podmienku "if (a[i].indexOf("#")!=0)" vymaž, pretože je tam dosť zbytočná. |
||
Chamurappi Profil |
#6 · Zasláno: 8. 5. 2008, 20:24:35
Reaguji na kowboye:
„Chtěl jsem jej také použít, ale validátor mi "nevezme" indexOf("#"). Tedy ten hash.“ To je velmi nepravděpodobné. Jakou chybu ti píše? A co používáš za validátor? Ten od W3C občas chybuje při zaměřování místa, kde se chyba nachází — označuje jiný znak, než který by měl. Zkus český validátor. Pomohlo by, kdybys sem vložil odkaz na příslušnou stránku. |
||
kowboy Profil * |
#7 · Zasláno: 8. 5. 2008, 21:18:28
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250"> <meta name="description" content=""> <meta name="keywords" content=""> <meta name="author" content=""> <meta name="robots" content="all"> <link rel="stylesheet" type="text/css" href="sss.css" media="screen"> <title></title> <script language="JavaScript" type="text/javascript> <!-- function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}} } //--> </script> </head> <body bgcolor="#000000"> mám tohle a dál je to už obyčejný web... stále mi to píše tu hlášku i v chamurappiho validatoru.. |
||
los Profil * |
#8 · Zasláno: 8. 5. 2008, 22:32:21
Nemáš uzavretý atribút type v elemente script (chýba úvodzovka). Takže hodnota atribútu tým pádom končí pri ďalšej úvodzovke, ktorá je hádaj kde.
|
||
kowboy Profil * |
#9 · Zasláno: 9. 5. 2008, 15:03:40
Já jsem ale jelito :-( díky moc, moje hloupost a nepozornost
|
||
Časová prodleva: 16 let
|
0