Autor | Zpráva | ||
---|---|---|---|
senior Profil |
#1 · Zasláno: 26. 10. 2013, 20:28:18
Pekný večer,
na zobrazenie obrázku z textového odkazu používam tento script <a href="#" onmouseover="loadimage('imgtext/plavcicky.jpg', event);" onmouseout="hideimage();" onmousemove="">plavčíčky z Baywatchu</a> V hlavičke stránky mám JS <script type="text/javascript"> var imgobj; function loadimage(url, e) { if(document.getElementById("img-preview")==null) { imgobj=document.createElement("img"); document.body.appendChild(imgobj); } else { imgobj=document.getElementById("img-preview"); imgobj.style.display="block"; } imgobj.setAttribute("src",url); imgobj.setAttribute("id","img-preview"); moveimage(e); } function moveimage(e) { var posx = 0; var posy = 0; if (!e) var e = window.event; if (e.pageX || e.pageY) { posx = e.pageX; posy = e.pageY; } else if (e.clientX || e.clientY) { posx = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft; posy = e.clientY + document.body.scrollTop + document.documentElement.scrollTop; } // posx and posy contain the mouse position relative to the document // Do something with this information itop=posy+"px"; ileft=posx+"px"; imgobj.style.position="absolute"; imgobj.style.top=itop; imgobj.style.left=ileft; } function hideimage() { imgobj=document.getElementById("img-preview"); imgobj.style.display="none"; } </script> Funguje to správne, ale má to jedinú chybu, že pri posunutí myši na iný link sa na chvíľu zobrazí posledný obrazok a až potom sa zobrazí ten správny obrázok. Ďakujem za pomoc. |
||
Kubo2 Profil |
#2 · Zasláno: 26. 10. 2013, 20:48:16 · Upravil/a: Kubo2
senior:
„že pri posunutí myši na iný link sa na chvíľu zobrazí posledný obrazok“ To preto, lebo sa ďaľší obrázok najprv musí natiahnuť zo servera. Skús si vyrobiť nejaký defaultný načítavací obrázok, ktorý pri načítavaní preloadneš (pomocou js new Image('/img/default-loading.gif'); ):
// ... function hideimage() { imgobj.setAttribute("src", '/img/default-loading.gif'); // ... ďaľší kód } Mimochodom taký loading obrázok si môžeš požičať napr. tento: alebo tento: A rôzne iné, každá (ja neviem, desiata?) webová stránka používa k niečomu takýto obrázok. Nevravím, že je to priam legálne takto kradnúť obrázky, ale ak si obrázok iba požičiaš (na krátky čas), nebude to myslím vadiť. |
||
senior Profil |
#3 · Zasláno: 26. 10. 2013, 21:30:23
Kubo2:
Ďakujem veľmi pekne, tak toto ma nenapadlo. Hneď to idem vyskúšať. Ak by bol problém, tak sa ešte ozvem. Ešte raz ďakujem. |
||
senior Profil |
#4 · Zasláno: 27. 10. 2013, 00:15:23
Kubo2:
Neviem, či som to správne pochopil, tak toto new Image('/img/default-loading.gif'); som napísal takto: <script type="text/javascript"> promenna = new Image(); promenna.src = "imgtext/default-loading.gif"; promenna.src = "imgtext/plavcicky.jpg"; //dalsie obr </script> <script type="text/javascript"> function hideimage() { imgobj.setAttribute("src", '/imgtext/default-loading.gif'); // ... co napisat sem } </script> |
||
senior Profil |
#5 · Zasláno: 27. 10. 2013, 02:05:50
Kubo2:
Už to všetko funguje správne, iba sa nezobrazuje ten loading.gif. Kde mám chybu? Ďakujem za pomoc. |
||
Kubo2 Profil |
#6 · Zasláno: 27. 10. 2013, 15:48:43
senior:
[#4] Namiesto toho komentára doplň pôvodný kód. Odstráň riadok 4. Loading.gif by sa ti mal začať zobrazovať. Ak nezačne, napíšem pre teba takú menšiu živú ukážku |
||
senior Profil |
#7 · Zasláno: 27. 10. 2013, 17:32:16
Kubo2:
Chybu prečo sa ten Loading.gif nezobrazoval som už našiel - stiahol som iný obrázok a zabudol som prepísať názov gif-u :-( Teraz to už funguje, ALE namiesto posledného zobrazeného obrázku mi tam zostane ten animovaný Loading.gif. Ďakujem ti za pomoc a ochotu. |
||
Kubo2 Profil |
#8 · Zasláno: 27. 10. 2013, 18:59:18
senior:
„mi tam zostane ten animovaný Loading.gif“ Tak som sa s tým trocha pohral: fungujúca živá ukážka + kód. Išpiruj sa, prípadne si prečítaj kód čo som kde spravil. Testované v Chrome na Ubuntu a tamtiež na Mozille. Nebudem klamať, v Mozille to trochu laguje a v IE to asi nepôjde, ale to si doladíš. |
||
senior Profil |
#9 · Zasláno: 27. 10. 2013, 19:42:48
Kubo2:
Vďaka idem to pozrieť ;-) |
||
Kubo2 Profil |
#10 · Zasláno: 27. 10. 2013, 20:41:14
senior:
„Vďaka idem to pozrieť ;-)“ Rado sa stalo :-) |
||
Časová prodleva: 10 let
|
0