Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JS] Jeżeli tabelka ma więcej niż ... to włącz jej przewijanie
kolaborek
post
Post #1





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 12.10.2010

Ostrzeżenie: (0%)
-----


Witajcie.

Przygotowałem stronkę, która na podstawie bazy tworzy tabelę z danymi. I teraz mam problem bo jednym razem jest to kilka wierszy, a innym kilkadziesiąt.
Strona ma być wyświetlana na bezobsługowym monitorze, więc nie ma możliwości, aby ktoś tam coś ręcznie przewijał.

Chciałbym Was prosić o podpowiedź jak zorganizować, aby tabelka (jeżeli np. ma więcej niż 600 pikseli w dół) była przewijała się sama do spodu i potem od nowa?
Myślałem, aby oprzeć się na długości tabeli, bo czasami jeden wiersz potrafi zawierać dość dużo danych.

Pozdrawiam
Daniel.

Widzę, że chyba się tego nie da zrobić...
A może po prostu ciągłe scrollowanie tabelki niezależnie od długości?

Sorki, że tak dopytuję, ale jeżeli chodzi o JS to jestem totalnie lewy... Nawet nie wiem co mógłbym zrobić, więc pytam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
kapslokk
post
Post #2





Grupa: Zarejestrowani
Postów: 965
Pomógł: 285
Dołączył: 19.06.2015
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


https://css-tricks.com/snippets/jquery/smooth-scrolling/
+ setInterval
+ sprawdzanie czy dojechales do konca strony
+ kilka przerobek

Ten post edytował kapslokk 13.10.2016, 12:01:49
Go to the top of the page
+Quote Post
szczemp
post
Post #3





Grupa: Zarejestrowani
Postów: 149
Pomógł: 9
Dołączył: 9.12.2010

Ostrzeżenie: (0%)
-----


Nie wiem czy ciągłe scroolowanie będzie dobre. Czy ktoś kto będzie czytał taką przewijaną tabelę nie będzie się gubił w treści? Może lepiej skokami pokazywać kolejne wiersze?
Np załadować całą tabelę na stronę i niech sobie będzie część niewidoczna. I co jakiś czas chować górny wiersz. No i trzeba sprawdzać kiedy zniknie ostatni wiersz, żeby znowu pokazać wszystkie. Dla lepszej orientacji walnąć jakiś zegar z odliczaniem do kolejnego zniknięcia wiersza. Tym sposobem tekst będzie stałw miejscu i będzie się go łatwiej czytać i wydaje mi się, że łatwiej to zrobić niż autoscrool.
Albo innym sposobem. Nie znikać górnego wiersza, a pokazywać nowy. Na początek pokazać tylko jeden i co jakiś czas dodawać kolejny na górę, wtedy stare wiesze będą same znikać poza ekranem.
Go to the top of the page
+Quote Post
kolaborek
post
Post #4





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 12.10.2010

Ostrzeżenie: (0%)
-----


@kapslokk
Dzięki za wskazówki, ale na razie nie dałem rady tego ogarnąć.
@szczemp
Jednak skokowa zmiana wierszy nie jest tutaj zbyt dobrym pomysłem. Powolne przewijanie lepiej wygląda.

Dostałem od kolegi poniższy skrypt. Fajnie przewija, ale całą stronę. Niestety obydwaj nie potrafimy go przerobić, aby przewijał tylko tabelkę (albo może diva, w której byłaby tabelka?). Macie pomysł jak to zmienić?

Kod
var currentpos=0,alt=1,curpos1=0,curpos2=-1
function initialize()
{
    startit()
}

function scrollwindow()
{
    if (document.all)
    temp=document.body.scrollTop
    else
    temp=window.pageYOffset
    if (alt==0)
    alt=1
    else
    alt=0
    if (alt==0)
    curpos1=temp
    else
    curpos2=temp
    if (curpos1!=curpos2){
    if (document.all)
    currentpos=document.body.scrollTop+1
    else
    currentpos=window.pageYOffset+1
    window.scroll(0,currentpos)
}
else
    {
        currentpos=0
        window.scroll(0,currentpos)
    }
}
function startit(){
setInterval("scrollwindow()",50)
}
window.onload=initialize
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 11:15