Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][CSS][HTML]tekst w pasku postępu
Forum PHP.pl > Forum > Przedszkole
Mlodycompany
Witam. Mam na stronie pasek postępu zrobiony w js a w nim jest informacja o pozostałym czasie. Otóż problem polega na tym, że gdy pasek jest odpowiednio szeroki wszystko jest tak jak powinno, ale gdy jest za mały to tekst przechodzi automatycznie do nowej linii i trochę to rozwala wygląd.
  1. <span id="progress">
  2. <span id="prou"></span>
  3. </span>


  1. #prou{
  2. background-image: url('../img/1.gif');
  3. display: block;
  4. height: 15px;
  5. width: 0px;
  6. padding: 5px 0px 5px 0px;
  7. overflow: visible;
  8. word-wrap: normal;
  9. }
  10. #progress{
  11. background-image: url('../img/2.gif');
  12. border-width: 2px;
  13. border-color: black;
  14. border-style: solid;
  15. display: block;
  16. width: 300px;
  17. overflow: visible;
  18. }

Co proponujecie aby to zreperować?
kamil4u
Jaki tekst? W przykładzie takowego nie ma. Najlepiej daj przykład prawidłowego i nieprawidłowego kodu(możesz go pobrać np. poprzez firebug-a). Akurat obrazki tu nie mają znaczenia, ale daj w przykładzie normalne kolory( background-color: #color)
Mlodycompany
dam cała funkcje w js która zmienia szerokość i wstawia tekst
  1. echo '
  2. var czasRozp = '.$row['czas-rozp'].';
  3. var czasZak = '.$row['czas-zak'].';
  4. var czasSzko = czasZak - czasRozp;
  5. var czas = '.time().';
  6. pasek();
  7. clearInterval(set)
  8. var set = setInterval(function(){ pasek() },1000);
  9. function pasek(){
  10. czas = czas + 1;
  11. if(czas > czasRozp){
  12. var width = 300;
  13. var prou = 0;
  14. $(\'#prou\').css(\'width\', prou);
  15. var pozostalo = czasZak - czas;
  16. var pro = pozostalo / czasSzko * 10000;
  17. pro = Math.floor(pro);
  18. pro = pro / 100;
  19. pro = 100 - pro;
  20. widthu = width * (pro / 100);
  21. widthu = Math.round(widthu);
  22. $(\'#prou\').css(\'width\', widthu);
  23. var czasZ = zamienSek(pozostalo);
  24. $(\'#prou\').html(Math.round(pro)+\'%(\'+czasZ+\')\');
  25. if(pozostalo <= 0){
  26. $(\'.kolejka\').load(\'load.php?func=konczSzkolenie&ids='.$row['id-szkolenia'].'\');
  27. $(\'#szkolenia\').load(\'load.php?func=reloadSzkolenia\');
  28. $(\'.right\').load(\'load.php?func=pokazWskazniki\');
  29. }
  30. }
  31. else{
  32. $(\'#prou\').html(\'rozpoczynanie<img src="img/loading.gif" width="15">\');
  33. }
  34. }
  35. </script>
  36.  
  37. <span id="progress"><span id="prou"></span></span>';

Funkcja zamienSek() zamienia sekundy na coś takiego 0 dni, 0:00:00 czyli cały tekst wygląda np. 55% (0 dni, 0:05:35). Co rozumiesz poprzez kod prawidłowy i nie prawidłowy? Jak dla mnie jest on zawsze taki sam. Tu tylko w naszej wyobraźni zmienia się co sekundę szerokość paska i tekst który jest w nim(ale ma zawsze tyle samo znaków). Skoro tło obrazkowe nie ma znaczenia to nie będzie miało znaczenia tło jednolitego koloru. Sprawdziłem w praktyce z kolorami i bez zmian.
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.