• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

jQuery - nie działa nic w środku funkcji. Dlaczego?

VPS Starter Arubacloud
0 głosów
1,765 wizyt
pytanie zadane 2 czerwca 2017 w JavaScript przez wojtfire Nowicjusz (120 p.)
edycja 2 czerwca 2017 przez wojtfire
Siemka. Zaczynam zabawę z jQuery tylko jak narazie zabawa zaczęła się przeciętnie.

Podam poniżej prosty kod, który chciałbym później oczywiście rozbudować, tylko nawet alert ("navOffset") nie dziala na stronie. Z kolei alert wpisany powyżej funkcji ("hello") pokazuje się tak jak należy. Co może być tego przyczyna?

alert("hello");
$(document).ready(function(){
    
    var navOffset = jQuery("nav").offset().top;
    alert(navOffset);
    
    //jQuery(window).scroll(function(){
        
        //var ScrollPos = jQuery(window).scrollTop();
        //alert(ScrollPos);
        
        //if(ScrollPos > 0){
        //    jQuery("#logo").hide();
        //}
        
    //})
    
});

 

Zauważyłem dopiero teraz, że wyskoczyły mi błędy (były zaznaczone małym znaczkiem na dole ekranu i nawet nie wiedziałem, że tam są :P ).

1. 'jQuery' was used before it was defined.

2.Expected exactly one space between 'function' and '('

3.Expected exactly one space between ')' and '{'

4.Missing space between ')' and '{'

5.Missing 'use strict' statement

6.'alert' was used before it was defined

Czy ktoś mi może wytłumaczyć o co chodzi z tymi błędami, bo kompletnie nie łapie. Wszystko w moim kodzie jest napisane tak jak należy. Kompletnie już zgłupiałem...

4 odpowiedzi

0 głosów
odpowiedź 2 czerwca 2017 przez ProgramistaStepek Nałogowiec (27,020 p.)
Sprawdź czy na pewno w sekcji body masz znacznik <nav>
komentarz 2 czerwca 2017 przez wojtfire Nowicjusz (120 p.)
jest, jest z ul i linkami, ale nawet jakbym zmienil alert z "navOffset" na cos typu "hello" to sie nie pojawia
komentarz 2 czerwca 2017 przez ProgramistaStepek Nałogowiec (27,020 p.)
Głupie pytanie ale czy na pewno dobrze podpiąłeś bibliotekę jQuery?
komentarz 2 czerwca 2017 przez wojtfire Nowicjusz (120 p.)
<script src="js/jquery-3.2.1.min.js"></script> powinno byc...
0 głosów
odpowiedź 2 czerwca 2017 przez pablop76 VIP (123,340 p.)
Witam . Uchwyt w jq to $
komentarz 2 czerwca 2017 przez ProgramistaStepek Nałogowiec (27,020 p.)

jQuery również jest poprawne LINK

komentarz 2 czerwca 2017 przez wojtfire Nowicjusz (120 p.)
tak, zgadza sie, poprawilem, zeby reszta sie zgadzala natomiast jQuery tez chyba mozna uzywac. Ale niczego to nie zmienia w kodzie. Chodzi mi o sama funkcjonalnosc funkcji .ready(function() ....). Wpisalem alert("Hello") i tez go nie wyswietla po wczytaniu strony. Nie potrafie znalezc powodu :(
0 głosów
odpowiedź 2 czerwca 2017 przez Michał Kazula Pasjonat (19,540 p.)
A kod jQ/JS gdzie jest wstawiony na początku czy na końcu pliku html?
komentarz 2 czerwca 2017 przez wojtfire Nowicjusz (120 p.)
osobny plik script.js podlaczony do htmla
komentarz 2 czerwca 2017 przez Michał Kazula Pasjonat (19,540 p.)
ładowany na początku html-a?
komentarz 2 czerwca 2017 przez wojtfire Nowicjusz (120 p.)
tak, w headzie
komentarz 2 czerwca 2017 przez kubaapk Nałogowiec (44,270 p.)
Pokaż jak zalinkowałeś skrypty.
komentarz 2 czerwca 2017 przez wojtfire Nowicjusz (120 p.)
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initiaal-scale=1">
        <title>Kalistenika</title>
        
        <link rel="stylesheet" href="style.css" type="text/css">
        <script type="text/javascript" src="js/script.js"></script>
        <script src="js/jquery-3.2.1.min.js"></script>

    </head>

Zerknij proszę na błędy, które dodałem w poście u góry. Teraz dopiero je znalazłem. Może to Ci coś powie, bo ja nie wiem jakim cudem akurat takie wyskoczyły :/
komentarz 2 czerwca 2017 przez ProgramistaStepek Nałogowiec (27,020 p.)
Wszysko jasne :) Zmień kolejność
komentarz 2 czerwca 2017 przez kubaapk Nałogowiec (44,270 p.)
ZAWSZE swoje skrypty ładuj jako ostatnie, jeśli korzystasz z zewnętrznych bibliotek. I z heada przenieś je na koniec body.
komentarz 2 czerwca 2017 przez wojtfire Nowicjusz (120 p.)
"Kaman"... Naprawdę? Dlaczego tak jest? Coś z przysłanianiem?

 

BTW wszystko już działa ;)
komentarz 2 czerwca 2017 przez kubaapk Nałogowiec (44,270 p.)
A jak ma być? Skrypty ładują się po kolei, a Ty chcesz używać de facto przed zadeklarowaniem w ogóle skryptu z jquery. ;)
komentarz 2 czerwca 2017 przez wojtfire Nowicjusz (120 p.)
Fuck, racja. Kompletnie tego nie przemyślałem.

Dzięki wielkie! Już tego błędu w życiu nie zrobię :D
–1 głos
odpowiedź 2 czerwca 2017 przez Hvosz Początkujący (410 p.)
Nigdy nie korzystałem z jQ, ale jak prawie każdym języku programowania i podejrzewam że w JS też. Funkcje należy wywołać, w JS chyba robi się to metodami typu onload onclikc itp. Mało siedziałem w JS więc przepraszam jeśli podpowiadam źle :)
komentarz 2 czerwca 2017 przez wojtfire Nowicjusz (120 p.)
tu odwołaniem jest funkcja .ready, która powinna wywołać się po całkowitym wczytaniu strony, a tak nie jest :(

Podobne pytania

0 głosów
2 odpowiedzi 180 wizyt
pytanie zadane 6 grudnia 2015 w C# przez RadomskiCoder Gaduła (3,980 p.)
0 głosów
1 odpowiedź 287 wizyt
pytanie zadane 4 sierpnia 2017 w Sprzęt komputerowy przez dziedziu Początkujący (370 p.)
+2 głosów
2 odpowiedzi 149 wizyt
pytanie zadane 16 kwietnia 2017 w Sprzęt komputerowy przez Natan Niedowóz Nowicjusz (140 p.)

92,958 zapytań

141,920 odpowiedzi

321,149 komentarzy

62,291 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...