Pohybování obrázky – JavaScript, AJAX, jQuery – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Pohybování obrázky – JavaScript, AJAX, jQuery – Fórum – Programujte.comPohybování obrázky – JavaScript, AJAX, jQuery – Fórum – Programujte.com

 

Petroff0
Věrný člen
6. 4. 2012   #1
-
0
-

Taková zajímavost: narazil jsem na bookmarklet, který vezme všechny obrázky (document.images) a vytvoří z nich pohybujícího se hada:

javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI= document.images; DIL=DI.length; function A(){for(i=0; i<DIL; i++){DIS=DI[ i ].style; DIS.position='absolute'; DIS.left=Math.sin(R*x1+i*x2+x3)*x4+x5; DIS.top=Math.cos(R*y1+i*y2+y3)*y4+y5}R++} setInterval('A()',5 ); void(0)

Funguje perfektně v IE , nikoli však v Opeře/Mozzile - nevíte jak na to?

PS.
Zkusil jsem do iniciační části vložit proceduru, která vloží do BODY na (0,0) prázdný abs.pozic.DIV a kolekci obrázků přemístí do něj:

DI=document.images; DIL=DI.length;
NDIV=document.createElement('div'); document.body.appendChild(NDIV); NDIV.style.position='absolute'; NDIV.style.zIndex=32767;
NDIV.style.width='1px'; NDIV.style.height='1px';
NDIV.style.left='0px'; NDIV.style.top='0px';
for(var i=0;i<DIL;i++) {IMAG=DI[i]; IMAG.parentElement.removeChild(IMAG); NDIV.appendChild(IMAG); IMAG.style.display='block'; IMAG.style.position='absolute'; IMAG.style.zIndex=32000 };

PROBLÉMY:
1) (v Opeře OK.)  Ve FF funguje jen na některých webech - na ostatních ani nedojde k vložení DIV kontejneru do BODY ????
2) např. na seznam.cz: některé obrázky rotují jako prázdné obdélníky bez obsahu

Nahlásit jako SPAM
IP: 94.113.30.–
Petroff0
Věrný člen
11. 4. 2012   #2
-
0
-

#1 Petroff
Toto funguje ve všech browserech:

javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI= document.images; DIL=DI.length; function A(){for(i=0; i<DIL; i++){DIS=DI[ i ].style; DIS.position='absolute'; DIS.zIndex=32000; DIS.left=(Math.sin(R*x1+i*x2+x3)*x4+x5)+'px'; DIS.top=(Math.cos(R*y1+i*y2+y3)*y4+y5)+'px'}R++}setInterval('A()',5 ); void(0)

[+]  Vykreslování bezchybné (pokud nedojde k zahlcení CPU => pak se zablokuje)

[–]  Na některých webech nevzniká jediný "had" z obrázků. To by zajistila jen výše uvedená procedura s pomocným DIV kontejnerem, BOHUŽEL některé obrázky při přesunu:  IMG.parentNode.removeChild(IMG); KontejnerDIV.appendChild(IMG);
ztratí vizuální obsah - nešlo by ho nějak obnovit ?

Nahlásit jako SPAM
IP: 94.113.30.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 3 hosté

Podobná vlákna

Pohybování se po předmětu — založil dragon124

Obrázky — založil Samuel Lehotský

Obrázky — založil Zelenáč

Obrazky — založil mORb

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý