Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [js] Problem z ONMOUSEOUT
Forum PHP.pl > Forum > Po stronie przeglądarki
Dynuel
Chcę zrobic rozwijane menu z jezykami, że jak sie najedzie na flagę (w tym przypadku "grafika/flagi/polski.gif"), to dokładnie na niej (pozycja popierana przez funkcje PositionLeft i PositionTop) pojawi sie dzieki "translation.style.display = 'block';" tabela z innymi jezykami do wyboru (id=translation). Owa tabela bedzie przykrywac poprzednia flage, po to ze jezeli uzytkownik zjedzie z owej tabeli badz flagi to ona zniknie dzieki onmouseout="this.style.display='none';".

wszystko niby ładnie (jak dla mnie), tylko pojawia sie problem, skrypt poczatkowo dziala, najezdzam na flage, pokazuje sie nowa tabelka, we wlasciwym miejscu, przykrywa ona poprzednia flage, i teraz niby powinienem moc swobodnie jezdzic myszka po wszystkich czterech obrazkach ktore sa w owej tabelce, i nic nie powinno znikac, prawda?? tylko niestety zamiast tego tabelka znika od razu po wyjechaniu z jakiego kolwiek obrazka, nie mozna swobodnie miedzy nimi przejezdzac (choc wszystkie sa w tej samej tabelce, a to tabelka ma ustawione : onmouseout="this.style.display='none';", a nie poszczegulne obrazki) , i nie mam pojecia dlaczego tak sie dzieje

odpalcie ponizszy kod dla rozjasnienia, gdyz troche namotalem


  1. <script type="text/javascript">
  2.  
  3. function PositionLeft(obj)
  4. {
  5. var curleft = 0;
  6. if (obj.offsetParent) {
  7. curleft = obj.offsetLeft
  8. while (obj = obj.offsetParent) {
  9. curleft += obj.offsetLeft
  10. }
  11. }
  12. return curleft;
  13. }
  14.  
  15. function PositionTop(obj)
  16. {
  17. var curtop = 0;
  18. if (obj.offsetParent) {
  19. curtop = obj.offsetTop
  20. while (obj = obj.offsetParent) {
  21. curtop += obj.offsetTop
  22. }
  23. }
  24. return curtop;
  25. }
  26.  
  27.  
  28.  
  29. <img src=grafika/flagi/polski.gif onmouseover="translation.style.left = PositionLeft(this); translation.style.top = PositionTop(this); translation.style.display = 'block';">
  30.  
  31. <table id=translation cellpadding=0 cellspacing=0 style="position: absolute; display: none;" onmouseout="this.style.display='none';">
  32. <img src=grafika/flagi/polski.gif><br>
  33. <img src=grafika/flagi/niemiecki.gif><br>
  34. <img src=grafika/flagi/angielski.gif><br>
  35. <img src=grafika/flagi/francuski.gif><br>
  36. </td></tr></table>
  37.  


ooo wlaśnie znalazłem taki sam temat, niestety bez zadnej odpowiedzi
http://forum.php.pl/index.php?showtopic=80...mp;#entry409824

kolejny (znowu bez zadnej odpowiedzi)
http://216.239.59.104/search?q=cache:hHC9s...mp;client=opera
BaN
Dodaj do znacznika table:
Kod
onmouseover="this.style.display='block'"
Dynuel
nie no nie moge, po prostu działa BaN jesteś genialny!!! co ja sie nad tym nasiedziałem, wyczytując najróżniejsze pierdoły D

a mam jeszcze jedno pytanko, dałbyś rade wytłumaczyc takie dziwne zachowanie przegladarki??
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.