JavaScript Είναι μία scripting language

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Τεχνολογίες Web Απαραίτητες γνώσεις για την υλοποίηση της άσκησης.
Advertisements

ΕΙΣΑΓΩΓΗ ΣΤΗΝ PHP. Τι θα μάθουμε;  Να καταλάβουμε τι είναι η PHP και πώς δουλεύουν τα PHP scripts  Τι χρειάζεται για να ξεκινήσουμε με την PHP  Να.
Τεχνικές Προγραμματισμού με την JavaScript Στυλιάδης Κων/νος Φλώρινα, Οκτώβριος 2004.
Προγραμματισμός Διαδικτύου Δρ. Παναγιώτης Συμεωνίδης Διεπαφή Εφαρμογής Παγκόσμιου Ιστού (Front End Programming)
5η Συνάντηση Εκπαιδευτικών Πληροφορικής στη Δυτική Μακεδονία Πτολεμαΐδα, 29 Σεπτ 2005 Δημιουργία Δυναμικών Ιστοσελίδων με PHP και Dreamweaver MX Στυλιάδης.
Δ.Π.Θ. Επεξεργασία Κειμένου - 1 Επεξεργασία Κειμένου Ένα πρόγραμμα σε γλώσσα HTML είναι ανεξάρτητο της μηχανής όπου θα εκτελεστεί. Δηλαδή αγνοούνται τα.
Μάθημα 2 Εισαγωγή στην Επιστήμη των Η/Υ ΙΙ
Εργαστήριο Λειτουργικών Συστημάτων Φροντιστήριο 2– Εισαγωγή στη Bash Ντίρλης Νικόλαος.
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Δ.Π.Θ. Συνδέοντας έγγραφα - 1 Συνδέοντας έγγραφα Μια σύνδεση στο Web (link) αποτελείται από δύο μέρη : Aυτό που βλέπουμε στη σελίδα και λέγεται άγκυρα.
CSS Cascading Style Sheets
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα.
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος γ
Προγραμματισμός στο ΜatLab
AJAX Asynchronous JavaScript and XML Θ. Βαρβαρίγου Καθηγ. ΕΜΠ Τηλ
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
JavaScript Θ. Βαρβαρίγου Καθηγ. ΕΜΠ Τηλ
Η ΓΛΩΣΣΑ C ΜΑΘΗΜΑ 2.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II.
Ιστοσελίδες -- Web-site. Εισαγωγή Στατικές ιστοσελίδες Δυναμικές ή Διαδραστικές ιστοσελίδες:  Ο τρόπος παρουσίασης και τα περιεχόμενά της ιστοσελίδας.
Τα Διαδοχικά Φύλλα Στυλ CSS
PHP/MYSQL ΠΑΡΟΥΣΙΑΣΗ ΣΤΑ ΠΛΑΙΣΙΑ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΕΠΟΙΚΟΙΝΩΝΙΑ ΑΝΘΡΩΠΟΥ-ΜΗΧΑΝΗΣ ΤΥΡΟΛΟΓΟΥ ΓΛΥΚΕΡΙΑ ΑΜ 875 ΡΙΖΟΥ ΔΕΣΠΟΙΝΑ ΑΜ 816.
1 Εισαγωγή στη Java Χρήσιμες Διευθύνσεις Χαρακτηριστικά της Java Εργαλεία της Java Εργαλεία της Java Μεταγλώττιση στοιχειωδών εφαρμογών.
Επικοινωνία Ανθρώπου Μηχανής HTML CGI JAVASCRIPT Κουμπούλης Χρήστος Α.Μ. 921 Χαλαβαζής Βασίλης Α.Μ. 988.
Applets Εκμεταλλεύονται τo γραφικό υπόβαθρο που παρέχουν οι browsers, έχοντας έτσι τη δυνατότητα προβολής γραφικών και τη δυνατότητα υλοποίησης ενός γραφικού.
Κουλίνας Μιχαήλ Α.Μ.:774 Μπουρνάζης Χρήστος Α.Μ.:792 Ρογκάκος Γεώργιος Α.Μ.:817.
ΟΣΣ Δεκεμβρίου 2004 Σχεδιασμός Λογισμικού Γλώσσες Προγραμματισμού ΙΙ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ.
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
University of Crete HY566-Semantic Web CS566 – Semantic Web Computer Science Department - UoC Heraklion 1 April, 2003 Παπαγγελής Μάνος, Κοφφινά Ιωάννα,
HY340 : ΓΛΩΣΣΕΣ ΚΑΙ ΜΕΤΑΦΡΑΣΤΕΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ, ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ, ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΔΑΣΚΩΝ Αντώνιος Σαββίδης.
Applets Εκτελούνται από τον appletviewer και από Java enabled web browsers Εκμεταλλεύονται τo γραφικό υπόβαθρο που παρέχουν οι browsers, έχοντας έτσι τη.
Επιστημονικός Υπολογισμός Ι Πρώτο Εργαστήριο Εισαγωγή στο matlab 15 Οκτωβρίου 2010 Γιώργος Δρακόπουλος ΤΜΗΥΠ.
ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Syntax Directed Translation and alpha Language.
Asynchronous Javascript And XML (AJAX) Γιώργος Θάνος Παρασκευή 21 Νοεμβρίου 2008.
HTML-PHP Καμπέρης Άρης Α.Μ. 763 Zaher Owda Α.Μ. 849.
Βασικά στοιχεία της Java
Κεφάλαιο 3 Τύποι Δεδομένων - Τελεστές. Πρωτογενείς τύποι δεδομένων: int, float, double, chars ΤύποςΌνομαΜέγεθος byte 8-bit signed, short 16-bit.
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Τύποι Μεταβλητών Τελεστές Βασική Είσοδος/Έξοδος.
Παρουσίαση εργαλείου Microsoft Silverlight Βερβέρης Παναγιώτης Α.Μ.888 Παπαθανασίου Αθανάσιος Α.Μ.958 1Παρουσίαση τεχνολογίας Silverlight.
Εφαρμογές Πολυμέσων: Εισαγωγή στην HTML (1)
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα.
ΣΥΝΑΡΤΗΣΙΑΚH JAVASCRIPT. Στόχος της ώρας Συναρτήσεις σε Javascript Συναρτήσεις ως τιμές Συναρτήσεις ως παράμετροι Επιστροφή συναρτήσεων Αντικειμενοστραφής.
ΠΡΙΝ ΞΕΚΙΝΗΣΟΥΜΕ Πράγματα που αξιολογείτε θετικά σε σχέση με το μάθημα του προηγούμενου τετραμήνου Πράγματα που θα μπορούσαν να βελτιωθούν.
Μάθημα 9 Λίγο απ’ όλα! HTML 5 Advanced PHP XML. HTML 5 Πρόκειται για μια νέα έκδοση της HTML που συμπληρώνει τις δυνατότητες της γλώσσας με κάποια Tags.
Δ.Π.Θ. JavaScrpt - 1 Javascript H γλώσσα JavaScript γεννήθηκε το 1995 Χαρακτηρίζεται σαν μία scripting γλώσσα Στη σύνταξή της μοιάζει με τη γλώσσα Java,
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ «Εισαγωγή στον οντοκεντρικό προγραμματισμό (βασική εισαγωγή στο περιβάλλον εργασίας)» Ρουσσάκης Ιωάννης, ΤΕΙ Κρήτης,
Ενότητα 2: HTML – Hypertext Markup Language. Φώτης Κόκκορας, Καθηγητής Εφαρμογών, Τμήμα Μηχανικών Πληροφορικής Τ.Ε., T.E.I. Θεσσαλίας Προγραμματισμός Εφαρμογών.
Προγραμματισμός Εφαρμογών Διαδικτύου Ενότητα 10: Google Maps API Φώτης Κόκκορας, Καθηγητής Εφαρμογών, Τμήμα Μηχανικών Πληροφορικής Τ.Ε., T.E.I. Θεσσαλίας.
Προγραμματισμός Εφαρμογών Διαδικτύου Ενότητα 4: JavaScript – Παραδείγματα (Τα απολύτως απαραίτητα για Form Validation) Φώτης Κόκκορας, Καθηγητής Εφαρμογών,
HTML/CSS: Εισαγωγή Θερινό Σχολείο, 14 – 20 Ιουλίου 2014 Γιώργος Φουρτούνης Μονάδα Αριστείας ΕΛ/ΛΑΚ ΤΕΙ Αθήνας.
ΔΗΜΙΟΥΡΓΙΑ ΙΣΤΟΣΕΛΙΔΩΝ Ένας Συνοπτικός Οδηγός Καμήλαλη Δέσποινα Μαθηματικός, MSc Πληροφορικής, Υποψήφια Διδάκτωρ Χαροκοπείου Πανεπιστημίου Αθηνών.
Αντικειμενοστραφής Προγραμματισμός Ι
Βασικά Web εργαλεία και τεχνολογίες
ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ
Client Side Προγραμματισμός Javascript
Εργασία στο μάθημα «Προγραμματισμός ΙΙ»
JavaScript.
Web Services στη C# Εργαστήριο 3
Εισαγωγή στον Προγ/μό Υπολογιστών
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
HTML - CSS Δίνεται παρακάτω ο κώδικας HTML μιας ιστοσελίδας
CSS Cascading Style Sheets
Γλώσσα Προγραμματισμού V PHP
Javascript – Χειρισμός της σελίδας
Javascript – Βασικά της γλώσσας
Εισαγωγή στη Java (Μέρος Α’)
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Η Ιστοσελίδα της Α΄ Τάξης Αυτή η πολύ απλή σελίδα είναι φτιαγμένη
Λήψη Αποφάσεων και Συναρτήσεις Ελέγχου
Μεταγράφημα παρουσίασης:

JavaScript Είναι μία scripting language «Ελαφριά» γλώσσα προγραμματισμού Μπορεί να προστεθεί σε ένα HTML αρχείο «Εκτελείται» από τον Internet browser Δεν σχετίζεται με τη Java, αλλά έχει ομοιότητες με αυτή Δημιουργήθηκε από τη Netscape Υποστηρίζεται από όλους τους browsers Πρόκληση: κώδικας που να υποστηρίζεται από τις περισσότερες εκδόσεις 1

Χρήση της JavaScript Μικρά κομμάτια κώδικα σε ένα HTML αρχείο π.χ. εμφάνιση σειράς αριθμών (1, 2, …, 100) Εμφάνιση «δυναμικού» περιεχομένου Αντιλαμβάνεται και αντιδρά σε γεγονότα – αλληλεπίδραση με τον χρήστη π.χ. ο χρήστης επιλέγει ένα link Αλλάζει τα περιεχόμενα σε html elements Ελέγχει δεδομένα που δίνονται σε μία φόρμα πριν αυτή γίνει submit

Εισαγωγή scripting language JavaScript <script type=“text/javascript”> document.write(“Hello World with JavaScript”); </script> Document: Αντικείμενο που περιέχει όλα τα στοιχεία των HEAD και BODY που αντιστοιχούν στις ετικέτες HTML του HTML εγγράφου View page 3

Τοποθέτηση scripting language Head section Η ετικέτα head φορτώνεται πρώτα Για scripts που εκτελούνται μετά την κλήση τους Κατάλληλο για συναρτήσεις Body Section Εκτελούνται όταν η σελίδα φορτώνεται External script <script type=“text/javascript” src=“global.js”></script> Επιτρέπονται πολλαπλά «scripts» σε ένα αρχείο

Μεταβλητές JavaScript Ξεκινούν με γράμμα ή “_” Case sensitive Ορισμός var name (var optional) Ανάθεση τιμής name = “Alex” mynumber = 15 Τοποθέτηση σε κείμενο "My name is " + name View page

Μεταβλητές - τύποι δεδομένων Μεταβλητές - τύποι δεδομένων Αριθμοί : ακέραιοι ή κινητής υποδιαστολής Boolean : true / false Strings : ανάμεσα σε μονά ή διπλά εισαγωγικά Αντικείμενα (objects) Null : διαφορετικός από τη μηδενική τιμή Undefined: αμέσως μετά τη δημιουργία της μεταβλητής – δεν έχει ανατεθεί τιμή Empty: undefined/null/κενό string, array ή object Δεν είναι απαραίτητο να δηλώνεται ο τύπος πριν την ανάθεση τιμής

Τελεστές Ισότητα == Ανισότητα != Λογικό “and” && Λογικό “or” || Λογικό “not” ! Ένωση strings + Μοναδιαία αύξηση/ μείωση ++ / -- Ανάθεση =, +=, -=, *=, /=

If … else JavaScript else if View page if (condition) { statements1; } varname = (condition)?trueVal:falseVal myCar = (ferrari>porche) ? “RedFerrari” : “ColPorche” View page

Switch --- Select JavaScript View page switch (expression) { case label1: statements1; break; case label2: statements2; default: statements; } View page

For JavaScript View page for (initial; condition; incr) { statements; } for (i=0;i<10;i++) { document.write(i) } View page

Do … while JavaScript View page while (condition) { statements } do { document.write(i + "<br>") i=i+1 } while (i < 10) View page

Έξοδος από βρόχο … σχόλια Break : εγκαταλείπει την εκτέλεση του βρόχου Continue : εγκαταλείπει την απλή επανάληψη του βρόχου Σχόλια // /* … */ View page

Ορισμός συναρτήσεων JavaScript function mfun(arg1,arg2) { statements; } function noarg() { document.write(15) } function print(msg) { document.write(msg) } function sum(a, b) { c = a + b return c }

Κλήση συναρτήσεων JavaScript noarg() print(“Hello”) mySum = sum(23, 7) alert(“This is alert”) View page

JavaScript Objects Υπάρχουν δύο τύποι αντικειμένων Εγγενή της γλώσσας πχ. Math, Date, String, Array Συγκεκριμένα για μία εφαρμογή (πχ. Browser) πχ. Window, Document, Form Όλα τα αντικείμενα έχουν Ιδιότητες : objectName.propertyName Μεθόδους : objectName.methodName() Case sensitive

Objects or Classes Objects : ξεκινούν με μικρό γράμμα Δημιουργούνται με τη χρήση του new πχ. var myDate = new Date Classes : ξεκινούν με κεφαλαίο γράμμα Δεν χρειάζεται να οριστούν exist by default πχ. Document

String object Ιδιότητες Μέθοδοι View page length bold(), blink(), charAt(), indexOf(), split(), substring(), toLowerCase(), toUpperCase(), … indexOf(str) : επιστρέφει την πρώτη εμφάνιση του str substring(a,b) : τους χαρακτήρες από το ath μέχρι και το b-1th (η αρίθμηση από το 0) View page

Math object Ιδιότητες Μέθοδοι E, LN2, LN10, PI, SQRT2, … abs(x), cos(x), sin(x), ceil(x), floor(x), max(x,y), min(x,y), random() random() : ένα τυχαίο αριθμό μεταξύ του 0 και 1

Date object Μέθοδοι View page Date() : επιστρέφει ένα αντικείμενο Date getDate() : επιστρέφει τη μέρα (1-31) getMonth(), getDay(), getYear() getHours(), getTime() setDate(), setMonth(), setHours() toString() : επιστρέφει την ημερομηνία ως string View page

Window object View page alert("Hello Students") prompt("What is your name?","") prompt(“question", "given_answer") confirm(“Do you agree?") Select “Ok” or “Cancel” location="string.html" window.status = “Your message" window.open("window2.html") A new window is opened onclick() View page

Form object <form name=“myForm”> <input type=“text” name=“myAge”> document.forms[0].myAge.focus() document.myForm.myAge.focus() document.myForm.myAge.value onsubmit() View page

Top Level Functions eval(string) parseInt(string[, radix]) Υπολογίζει την αλφαριθμητική παράμετρο σαν να ήταν javascript εντολές View Page parseInt(string[, radix]) Προσπαθεί να μετατρέψει την αλφαριθμητική παράμετρο σε ακέραιο της ορισμένης βάσης Αν δεν ορίζεται η βάση τότε Αν το string αρχίζει από "0x" θεωρείται σαν βάση το 16 Αν το string αρχίζει από "0" θεωρείται σαν βάση το 8 Διαφορετικά θεωρείται σαν βάση το 10

DHTML Σκοπός της οι σελίδες να είναι δυναμικές Συνδυασμός από HTML, CSS και JavaScript Χρησιμοποιεί τα objects της JavaScript Κυρίως στηρίζεται στο Document Object Model Διαφορετικό DOM υποστηρίζουν η Netscape και η Microsoft Οριοθέτηση (positioning) Μεταβολή style Χειρισμός γεγονότων (event handling)

Χρήση του DOM <div id=“mydiv” style=“position:absolute; visibility:visible; left:400px; top:100px;”> <a href=“www.ceid.upatras.gr”>CEID</a> </div> Άμεσα προσπελάσιμα ως objects από την JavaScript μέσω του DOM MS : document.all.mydiv.style.visibility=“hidden”; NS : document.layers[“mydiv”].visibility=“hidden”; MS+NS: document.getElementById(“mydiv”).style.visibility=“hidden”; Mέσω JavaScript μπορούμε να αλλάξουμε τις ιδιότητες ενός style και να δούμε τις αλλαγές αυτόματα

Δυναμική οριοθέτηση <p id = “_pt" style = "position: absolute; left: 0; color: blue"> Welcome! </p> _pt = document.getElementById(“_pt”); _pt.style.fontSize = myvar/3; _pt.style.left = myvar; _pt.innerHTML = "<BR> Font size: " + myvar + "px"; View page

Κρύψιμο Αντικειμένων View page Style=“visibility: {visible; hidden; inherit}”; View page Style=“display: {inline; block; none;}”; Ποια η διαφορά ανάμεσα στις δύο ιδιότητες;

Μεταβολή style Επιλογή φόντου View page <BODY bgcolor="red"> inpCol = prompt( «Select background color", "" ); document.body.style.backgroundColor = inpCol; View page Επιλογή μεγέθους κειμένου pText.className = inputClass; <style> .bigText { font-size: 3em; font-weight: bold } .smallText { font-size: .5em } </style>

Χειρισμός γεγονότων Γεγονότα Handler : onEventName πάτημα κουμπιού : click ποντίκι πάνω σε κάποιο στοιχείο : mouseover αποστολή δεδομένων φόρμας : submit ολοκλήρωση του φορτώματος όλων των αντικειμένων (όχι παρέμβαση του χρήστη) : load Handler : onEventName π.χ. onClick, onMouseOver, onSubmit, onLoad

Παραδείγματα (1) onClick onLoad <input type= "button" value= "Click Me!" onClick= "alert( 'Hi again' )"> onClick=“myFunction()” onLoad <body onLoad= "startTimer()">

Παραδείγματα (2) onMouseOver / onMouseOut <body onmouseover="mOver(event)" onmouseout="mOut(event)"> function mOver(evt){ //mozilla if(evt.target && evt.target.id) evt.target.style.color=evt.target.id; //IE if(evt.srcElement && evt.srcElement.id) evt.srcElement.style.color=evt.srcElement.id; }

MAP APIs APIs για την ενσωμάτωση γεωγραφικών υπηρεσιών σε ιστοσελίδες Χρήση DHTML και JavaScript για τη χρήση των χαρτών και των δυνατοτήτων που προσφέρει το API Google Maps API Yahoo Maps API …..

π.χ. Google Maps API Βήματα: Δημιουργία API ID (μοναδικό για κάθε web site) Προσθήκη Google JavaScript κώδικα στη σελίδα για τη χρήση του API Χρήση JavaScript συναρτήσεων για την προσθήκη σημείων / αντικειμένων στο χάρτη <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=API_KEY&sensor=false"></script>

Google Maps – προσθήκη Χάρτη (1) Ο χάρτης περιέχεται σε ένα DIV <head> <style type="text/css"> #map { height: 75%; width: 100%; } </style> </head> <body> <div id="map"></div> ………………… </body>

Google Maps – προσθήκη Χάρτη (2) Και δημιουργείται με κλήσεις JavaScript <script type="text/javascript">       function initialize() { //JavaScript object literal holding a number of map properties         var mapOptions = {           center: new google.maps.LatLng(-34.397, 150.644),           zoom: 8         }; //Map object         var map = new google.maps.Map(document.getElementById("map-canvas"), mapOptions);       } //event listener to load the map after the page has loaded       google.maps.event.addDomListener(window, 'load', initialize);     </script>

Google Maps – προσθήκη Σημείου Βρες τις συντεταγμένες (π.χ. Geocoding service) Πρόσθεσε το σημείο Παραδείγματα var myLatlng = new google.maps.LatLng(-25.363882,131.044922); var marker = new google.maps.Marker({       position: myLatlng,       map: map,       title: 'Hello World!'   });