🟢 Τι κάνει: Απλώς εμφανίζει ένα κουμπί, αλλά δεν συμβαίνει τίποτα όταν το πατήσεις.
2️⃣ HTML με onclick (Χωρίς JavaScript λογική)
Το attribute onclick υπάρχει, αλλά είναι άδειο
<!DOCTYPE html>
<html lang="el">
<head>
<meta charset="UTF-8">
<title>Onclick χωρίς JavaScript</title>
</head>
<body>
<h1>Κουμπί με onclick (Χωρίς JavaScript)</h1>
<!-- Το onclick υπάρχει, αλλά δεν έχει καμία εντολή -->
<buttononclick="">Πάτα με!</button>
</body>
</html>
🟡 Τι κάνει: Έχει το attribute onclick, αλλά δεν τρέχει τίποτα επειδή είναι άδειο.
3️⃣ HTML με JavaScript (Ενεργή εντολή)
Τώρα το κουμπί εκτελεί πραγματικό κώδικα JavaScript!
<!DOCTYPE html>
<html lang="el">
<head>
<meta charset="UTF-8">
<title>Κουμπί με JavaScript</title>
</head>
<body>
<h1>Κουμπί με JavaScript</h1>
<!-- Όταν το πατήσεις, θα εμφανίσει μήνυμα -->
<buttononclick="alert('Γεια σου!')">Πάτα με!</button>
</body>
</html>
🟣 Τι κάνει: Όταν πατήσεις το κουμπί, εκτελείται JavaScript και εμφανίζεται ένα μήνυμα (alert).
💡 Η Διαφορά
1️⃣ Χωρίς JavaScript: Το κουμπί είναι απλά διακοσμητικό
2️⃣ Με άδειο onclick: Υπάρχει η "θύρα" για JavaScript, αλλά δεν υπάρχει κώδικας
3️⃣ Με JavaScript: Το κουμπί γίνεται ζωντανό και διαδραστικό! ✨
Ποιος κάνει τι;
🔍 Ας αναλύσουμε το παράδειγμα 3️⃣
Στο παράδειγμα <button onclick="alert('Γεια σου!')">Πάτα με!</button> υπάρχουν τρία μέρη:
Κομμάτι
Γλώσσα
Τι κάνει
<button>...</button>
HTML
Δημιουργεί κουμπί
onclick="..."
HTML attribute που «μιλάει» στη JavaScript
Ορίζει τι θα γίνει όταν γίνει κλικ
alert('Γεια σου!')
JavaScript
Εκτελεί εντολή εμφάνισης μηνύματος
⚙️ Άλλες εντολές JavaScript (όπως το alert())
📚 Βασικές ενσωματωμένες εντολές
Η JavaScript έχει πολλές ενσωματωμένες εντολές (συναρτήσεις) που μπορείς να χρησιμοποιήσεις. Μερικές από τις πιο βασικές:
Εντολή
Τι κάνει
alert('Μήνυμα')
Εμφανίζει ένα μήνυμα στον χρήστη
console.log('Κάτι')
Εμφανίζει μήνυμα στην κονσόλα (χρήσιμο για προγραμματιστές)
prompt('Ερώτηση')
Ζητά από τον χρήστη να γράψει κάτι σε ένα μικρό παράθυρο
confirm('Σίγουρα;')
Εμφανίζει μήνυμα με κουμπιά OK/Cancel
document.write('Κείμενο')
Εμφανίζει κείμενο απευθείας στη σελίδα
document.getElementById('id')
Βρίσκει ένα HTML στοιχείο για να το αλλάξεις με JavaScript
🧮 Άλλες "ενέργειες" όπως το onclick
🎯 HTML Events
Εκτός από το onclick, υπάρχουν πολλά HTML events που ενεργοποιούν JavaScript κώδικα όταν κάτι συμβεί. Μερικά παραδείγματα:
Event
Πότε ενεργοποιείται
onclick
Όταν γίνει κλικ
onmouseover
Όταν ο δείκτης περάσει πάνω από το στοιχείο
onmouseout
Όταν ο δείκτης φύγει από το στοιχείο
onchange
Όταν αλλάξει η τιμή σε πεδίο φόρμας
onkeydown
Όταν πατηθεί πλήκτρο στο πληκτρολόγιο
onload
Όταν φορτώσει πλήρως η σελίδα
📘 Παράδειγμα με onmouseover
<!DOCTYPE html>
<html lang="el">
<head>
<meta charset="UTF-8">
<title>Mouse Events</title>
</head>
<body>
<h1>Δοκίμασε τα Mouse Events</h1>
<!-- Όταν περάσεις το ποντίκι πάνω, θα εμφανιστεί μήνυμα -->
<buttononmouseover="alert('Πέρασες το ποντίκι!')">Δοκίμασε!</button>
</body>
</html>
📗 Πολλαπλά Events στο ίδιο στοιχείο
<!DOCTYPE html>
<html lang="el">
<head>
<meta charset="UTF-8">
<title>Πολλαπλά Events</title>
</head>
<body>
<h1>Κουμπί με πολλά events</h1>
<buttononclick="alert('Πάτησες το κουμπί!')"onmouseover="console.log('Το ποντίκι είναι πάνω στο κουμπί')"onmouseout="console.log('Το ποντίκι έφυγε από το κουμπί')">
Διαδραστικό Κουμπί
</button>
</body>
</html>
3.2 Πού γράφουμε JavaScript;
Υπάρχουν 3 τρόποι να γράψουμε JavaScript, ακριβώς όπως με το CSS!
Τρόπος 1: Inline JavaScript
📘 Μέσα στα HTML elements
<!DOCTYPE html>
<html lang="el">
<head>
<meta charset="UTF-8">
<title>Inline JavaScript</title>
</head>
<body>
<h1>Inline JavaScript Παράδειγμα</h1>
<!-- Όταν πατήσεις το κουμπί, θα εμφανιστεί μήνυμα -->
<buttononclick="alert('Γεια σου!')">Πάτα με!</button>
</body>
</html>
⚠️ Σημείωση: Όπως και με το CSS, δεν το χρησιμοποιούμε συχνά!
Τρόπος 2: Internal JavaScript
📗 Μέσα στο <script> tag
<!DOCTYPE html>
<html lang="el">
<head>
<meta charset="UTF-8">
<title>Το πρώτο μου πρόγραμμα</title>
</head>
<body>
<h1>Γεια σου JavaScript!</h1>
<!-- Η JavaScript γράφεται μέσα στο script tag -->
<script>
// Αυτός ο κώδικας θα τρέξει όταν φορτώσει η σελίδαalert("Καλωσήρθες!");
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="el">
<head>
<meta charset="UTF-8">
<title>Console.log Παράδειγμα</title>
</head>
<body>
<h1>Μήνυμα στην Κονσόλα</h1>
<p>Άνοιξε την κονσόλα (F12) για να δεις το μήνυμα!</p>
<script>
// Εμφανίζει μήνυμα στην κονσόλα του browserconsole.log("Γεια σου από την κονσόλα!");
</script>
</body>
</html>
💡 Τι είναι η κονσόλα;
Η κονσόλα είναι ένα "κρυφό" παράθυρο στον browser όπου οι προγραμματιστές βλέπουν μηνύματα.
Πώς την ανοίγω;
Πάτα F12 ή Ctrl + Shift + I
Πήγαινε στην καρτέλα "Console"
📝 Πλήρες Παράδειγμα console.log
Δες πώς γράφουμε ολόκληρο το παράδειγμα με περισσότερες χρήσεις του console.log:
<!DOCTYPE html>
<html lang="el">
<head>
<meta charset="UTF-8">
<title>Παράδειγμα console.log</title>
</head>
<body>
<h1>Το πρώτο μου πρόγραμμα JavaScript</h1>
<buttononclick="console.log('Πάτησες το κουμπί!')">
Πάτα με!
</button>
<script>
// Εμφανίζει μήνυμα στην κονσόλα του browserconsole.log("Γεια σου από την κονσόλα!");
// Περισσότερα παραδείγματα:console.log("Κείμενο");
console.log(42);
console.log(true);
// Πολλαπλές τιμέςconsole.log("Το αποτέλεσμα είναι:", 5 + 3);
// Με μεταβλητέςlet name = "Μαρία";
console.log("Γεια σου", name);
</script>
</body>
</html>
💡 Συμβουλή: Αποθήκευσε αυτόν τον κώδικα σε ένα αρχείο .html και άνοιξέ το στον browser. Μετά πάτα F12 για να δεις τα μηνύματα στην κονσόλα!
3.4 Μεταβλητές
💡 Τι είναι οι μεταβλητές;
Οι μεταβλητές είναι σαν "κουτιά" που αποθηκεύουμε τιμές!
Φαντάσου ότι έχεις ένα κουτί με όνομα "ηλικία" και μέσα βάζεις τον αριθμό 20.
Πώς δημιουργούμε μεταβλητές
🔑 Οι 3 τρόποι
let → Για μεταβλητές που μπορούν να αλλάξουν (χρησιμοποιούμε αυτό!)
const → Για σταθερές (δεν μπορούν να αλλάξουν)
var → Παλιός τρόπος (δεν τον χρησιμοποιούμε πια)
📘 Παραδείγματα
<!DOCTYPE html>
<html lang="el">
<head>
<meta charset="UTF-8">
<title>Μεταβλητές</title>
</head>
<body>
<h1>Παράδειγμα Μεταβλητών</h1>
<script>
// Δημιουργούμε μεταβλητήlet onoma = "Γιάννης";
let ilikia = 20;
// Εμφανίζουμε τις τιμέςconsole.log(onoma); // Γιάννηςconsole.log(ilikia); // 20// Αλλάζουμε τιμή
ilikia = 21;
console.log(ilikia); // 21// Σταθερά (δεν μπορεί να αλλάξει)const PI = 3.14;
console.log(PI); // 3.14
</script>
</body>
</html>
⚠️ Κανόνες για ονόματα μεταβλητών
✅ Μπορούν να περιέχουν γράμματα, αριθμούς, _ και $
✅ let onoma, let ilikia1, let _test
❌ ΔΕΝ μπορούν να ξεκινούν με αριθμό
❌ let 1test (ΛΑΘΟΣ!)
❌ ΔΕΝ μπορούν να έχουν κενά
❌ let my name (ΛΑΘΟΣ!)
3.5 Τύποι Δεδομένων
💡 Τι είδους τιμές μπορούμε να αποθηκεύσουμε;
Υπάρχουν διάφοροι τύποι δεδομένων στη JavaScript!
Οι βασικοί τύποι
📘 Παράδειγμα με όλους τους τύπους
<!DOCTYPE html>
<html lang="el">
<head>
<meta charset="UTF-8">
<title>Τύποι Δεδομένων</title>
</head>
<body>
<h1>Τύποι Δεδομένων στη JavaScript</h1>
<script>
// 1. String (Κείμενο)let onoma = "Μαρία";
let poli = 'Αθήνα';
let minima = "Γεια σου!";
// 2. Number (Αριθμοί)let ilikia = 25;
let timi = 19.99;
let thermokrasia = -5;
// 3. Boolean (Αληθές/Ψευδές)let einaiEnilikos = true;
let exeiDiplwma = false;
// Εμφάνιση στην κονσόλαconsole.log("String:", onoma, "τύπος:", typeof onoma);
console.log("Number:", ilikia, "τύπος:", typeof ilikia);
console.log("Boolean:", einaiEnilikos, "τύπος:", typeof einaiEnilikos);
</script>
</body>
</html>