Konsola vs console

0

Witam, zaczynam przygodę z JS i nurtuje mnie jedna sprawa, dlatego mam pytanie: czemu gdy wpiszę w Konsoli (Firefox) zapis window.scrollY to oczywiście zwróci mi wartość gdzie znajduje się scroll, natomiast gdy w VS wpiszę samo: console.log(window.scrollY); za każdym razem dostaję wartość 0 w konsoli, mimo że "pasek scroll" był położony "w innej wartości"?

Pozdrawiam Łukasz

0

co to jest VS? Visual Studio? To da się w tym pisać i debugować JavaScript?

0

Literówka chodzi oczywiście o edytor Visual Studio Code.

0

W jaki sposób uruchamiasz kod console.log(window.scrollY); w Visual Studio Code?

0
Silv napisał(a):

W jaki sposób uruchamiasz kod console.log(window.scrollY); w Visual Studio Code?

Bezpośrednio w znacznikach <script></script> przed samym </body>.
Tak sobie myślałem, że ma to coś może wspólnego z zdarzeniem utworzenia drzewa dokumentu i żeby napisać $(document).ready(function ($) z JQuery i poczekać na efekty.
Więc podpiąłem bibliotekę JQ i... okazało się, że wszystko gra nie zdążyłem nawet napisać tej funkcji document.ready.
Ciekawi mnie tylko czemu tak się dzieje.

1

Ale... po co w sumie odpalasz apkę w VSC?

2

@RivskiWłóczęga: miałem na myśli, czy np. VS Code uruchamia przeglądarkę, Node.js czy coś innego. Z Twojej odpowiedzi wnioskuję, że przeglądarkę. Skoro tak, to wartość 0 jest poprawna moim zdaniem, jeśli założyć, że zawsze uruchamiasz przeglądarkę "od góry strony", tzn. ze stroną nieprzesuniętą w dół. Czyli zawsze "scroll" jest na samej górze.

Ewentualnie mógłbyś coś z przesunięciem strony robić w kodzie… ale w takim wypadku już musisz powiedzieć dokładnie.


UPDATE: uruchomiłem u siebie następujący kod – wyświetla 15 w konsoli:

<!DOCTYPE html>
<html>
    <head>
    </head>
    <body>
        <div style="width: 10px; height: 5000px; background-color: green;"></div>
        <script>
            window.scrollBy(0, 15);
            console.log(window.scrollY);
        </script>
    </body>
</html>

PS. Warto dodać, że korzystałem z przeglądarki Firefox 74.0 (64-bit) na Linuxa.

0
Silv napisał(a):

@RivskiWłóczęga: miałem na myśli, czy np. VS Code uruchamia przeglądarkę, Node.js czy coś innego. Z Twojej odpowiedzi wnioskuję, że przeglądarkę. Skoro tak, to wartość 0 jest poprawna moim zdaniem, jeśli założyć, że zawsze uruchamiasz przeglądarkę "od góry strony", tzn. ze stroną nieprzesuniętą w dół. Czyli zawsze "scroll" jest na samej górze.

Ewentualnie mógłbyś coś z przesunięciem strony robić w kodzie… ale w takim wypadku już musisz powiedzieć dokładnie.


UPDATE: uruchomiłem u siebie następujący kod – wyświetla 15 w konsoli:

<!DOCTYPE html>
<html>
    <head>
    </head>
    <body>
        <div style="width: 10px; height: 5000px; background-color: green;"></div>
        <script>
            window.scrollBy(0, 15);
            console.log(window.scrollY);
        </script>
    </body>
</html>

PS. Warto dodać, że korzystałem z przeglądarki Firefox 74.0 (64-bit) na Linuxa.

Dokładnie, uruchamia się w Firefoxie. Tak jak już wcześniej wspominałem, jestem mega świeży w temacie JS. W między czasie zauważyłem taką sytuację, więc chciałem o to zapytać, sądząc, że być może są jakieś zależności, o których jeszcze nie wiem, czy też pewne reguły na które warto zwrócić uwagę w przyszłości nauki JS, no i po prostu zwyczajnie byłem ciekawy;) Dziękuje za poświęcony mi czas. Zauważyłem, że wstawienie właśnie linijki, którą napisałeś window.scrollBy();( nawet bez żadnych parametrów) rozwiązuje "problem". Odświeżając stronę wyświetli w konsoli Firefoxa aktualnie położony stan pionowego paska przewijania, w zależności gdzie się znajduje. Zakomentowując tą linijkę, znów zaczyna zwracać tylko wartość zero, nawet gdy odświeżę, a pasek przewijania jest w pozycji różnej od wartości 0.Dodaję window.scrollBy() i wszystko gra.

1 użytkowników online, w tym zalogowanych: 0, gości: 1