• 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?

Object Storage Arubacloud
0 głosów
1,364 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,180 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 166 wizyt
pytanie zadane 6 grudnia 2015 w C# przez RadomskiCoder Gaduła (3,980 p.)
0 głosów
1 odpowiedź 281 wizyt
pytanie zadane 4 sierpnia 2017 w Sprzęt komputerowy przez dziedziu Początkujący (370 p.)
+2 głosów
2 odpowiedzi 138 wizyt
pytanie zadane 16 kwietnia 2017 w Sprzęt komputerowy przez Natan Niedowóz Nowicjusz (140 p.)

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...