[css] [JavaScript] Element przyklejający się do ekranu po skrolowaniu., Skrypt nie do końca dobrze działa. |
[css] [JavaScript] Element przyklejający się do ekranu po skrolowaniu., Skrypt nie do końca dobrze działa. |
24.08.2017, 13:41:28
Post
#1
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) |
Witam.
Przygotowałem skrypt, który przykleja element do okna przeglądarki (position:fixed) gdy górna kraweź przeglądarka zjeżdżając w dół, scrolując osiągnie już ten element Już mniej więcej działa, jak osiągne górną granice tego elementu, to zmienia sie pozycja.
Prosze o pokierowanie. Widzę, że w momencie gdy element dostaje position fixed, parametr top jest dosyc łatwy do określenia ale co z pozycją right? :/ Dodatkowo jak wracam spowrotem na góre to element dalej ma pozycje fixed. Coś nie tak jest z kodem javascript. |
|
|
24.08.2017, 13:53:09
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Skoro element po dodaniu klasy .fly_lista ma pozycję fixed, to jaki jest sens pobierania wtedy jego pozycji (offset)?
A co do położenia od prawej, to trudno Ci odpowiedzieć, bo nie wiadomo jaka jest jego pozycja kiedy nie jest zafiksowany. Chyba, że przed przyklejeniem również jest umiejscowiony przy prawej krawędzi. Wtedy nic nie trzeba zmieniać. -------------------- |
|
|
24.08.2017, 14:28:59
Post
#3
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) |
Skoro element po dodaniu klasy .fly_lista ma pozycję fixed, to jaki jest sens pobierania wtedy jego pozycji (offset)? A co do położenia od prawej, to trudno Ci odpowiedzieć, bo nie wiadomo jaka jest jego pozycja kiedy nie jest zafiksowany. Chyba, że przed przyklejeniem również jest umiejscowiony przy prawej krawędzi. Wtedy nic nie trzeba zmieniać. Ofset pobieram tylko po to, żeby wiedzieć kiedy okno przeglądarki "osiągneło" już ten element. Późnije ju żgo nie potrzebuje, chodzi tetraz o to, że element pozycjonowany jako fixed uciekami na praą częśc okna przeglądarki. Przed fixowaniem jest w prawej części kontenera strony, który ma 1300 pixeli. Jego style są tutaj: pod znacznikiem: #top-fixed-menu Ten post edytował luis2luis 24.08.2017, 14:30:16 |
|
|
24.08.2017, 14:32:03
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Nie potrzebujesz, ale wykorzystujesz. Przecież na tym jest oparty warunek.
Jeśli rozwiążesz ten problem, to będziesz wiedział co począć z właściwością right. -------------------- |
|
|
24.08.2017, 14:59:54
Post
#5
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) |
Nie potrzebujesz, ale wykorzystujesz. Przecież na tym jest oparty warunek. Jeśli rozwiążesz ten problem, to będziesz wiedział co począć z właściwością right. dzieki za odpowiedzi. Jeśli mnie oczy nie mylą, parametr ofset decyduje o tym kiedy dodac klase ".fly_lista". Klasa doaje siępoprawnie, ale jak wyjde wyżej to już nie jest kasowanato jest jedne z tych problemów. --- aha wiem- powineniem wartość offset.top zapisac sobie poza tym zdażeniem jako zmienną przekazać do skryptu, ponieważ później jak już element jest zafixowany to wtedy fixowany element już offset.top nie złapie. pozostaje problem z pozycją od prawego boku ekranuj.. Ten post edytował luis2luis 24.08.2017, 15:04:21 |
|
|
24.08.2017, 15:04:09
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
A kiedy usunąć klasę, to już nie decyduje?
Przecież cały czas wykorzystujesz go i opierasz na nim warunek. -------------------- |
|
|
24.08.2017, 15:18:55
Post
#7
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) |
Rozwiązałem już jedną sprawe tego, że klasa fly sie nie wyłącza.
Czy do wyznaczenia parametru css('right', ? ); potrzebuje ten mechanizm offset ?
Ten post edytował luis2luis 24.08.2017, 15:21:49 |
|
|
24.08.2017, 15:19:42
Post
#8
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
A jakie parametry zwraca funkcja offset?
-------------------- |
|
|
24.08.2017, 23:54:09
Post
#9
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) |
|
|
|
25.08.2017, 07:29:31
Post
#10
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Co się sprowadza do tego, że right=left+szerokość_elementu.
Ale możesz też używać tylko left. -------------------- |
|
|
25.08.2017, 10:24:00
Post
#11
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 0 Dołączył: 25.11.2015 Ostrzeżenie: (0%) |
|
|
|
11.12.2017, 19:28:23
Post
#12
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 11.12.2017 Ostrzeżenie: (0%) |
|
|
|
Wersja Lo-Fi | Aktualny czas: 19.04.2024 - 22:25 |