Capitolul 4 - JavaScript
Capitolul 4 - JavaScript
JavaScript : Introducere
Introducere
03/02/2021 [Link] 2
1
03/02/2021
Introducere
03/02/2021 [Link] 3
HTML ș i JavaScript
2
03/02/2021
Cele două etichete de Javascript trebuie plasate între etichetele <body> și </body>
în cazul unei execuții directe sau între etichetele <head> și </head> ale paginii
HTML pentru o execuție întârziată.
•Stocat într-un fișier pe server la adresa sa de apel sub formă de TEXT
SIMPLEportant extensia .txt sau .js
•Simplifică întreținerea site-urilor care folosesc module JavaScript comune
la mai multe pagini HTML.
03/02/2021 [Link] 6
3
03/02/2021
<html>
<head>
<title> une page simple </title>
</head>
<body>
Bună ziua
<script language='javascript'>
alert('bună');
[Link] (
Ce este numele tău?
);
confirm('ce buton veț i alege?');
</script>
</body>
</html>
03/02/2021 [Link] 8
4
03/02/2021
03/02/2021 Pă[Link] 9
Variabilele
•Declarație și alocare
Cuvântul-cheie permite să declar o sau //Declarație doi, dejet dek.
mai multe variabile. var i, j, k;
03/02/2021 [Link] 10
5
03/02/2021
Variabilele
•Declarație și alocare
Citearea unei variabile nedecalate provoacă o eroare
O variabilă declarat corect, dar căreia nu i s-a atribuit nicio valoare, este nedefinită
(undefined).
La portée
Variabilele pot fi globale sau locale.
O variabilă globală este declarată la începutul scriptului și este accesibilă din orice parte.
locul programului.
O variabilă locală este declarată în interiorul unei funcții și este utilizabilă doar în cadrul acesteia.
funcț ia ea însăș i.
03/02/2021 [Link] 11
Variabilele
Tipul unei variabile depinde de valoarea stocată în această variabilă. Nu există
declaraț ie de tip.
var maVariable= 'Philippe';
maVariable =10;
• trei tipuri principale de valori
•Șir
Număr10^-308 >număr < 10^308
Numerele întregi
numerele zecimale în virgulă mobilă
•3 valori speciale :
•Infinit pozitiv sau +Infinity (valoare infinit pozitivă)
•Infinit negativ ou–Infinit (valoare infinit negativă)
•Nan (Nu este un număr) generat de obicei ca rezultat al unei operații
matematică incoerentă
Boolean
•două valori literale: adevărat (true) și fals (false).
03/02/2021 [Link] 12
6
03/02/2021
Valori speciale
03/02/2021 [Link] 13
7
03/02/2021
•eval
•Această funcție execută un cod Javascript dintr-un șir de caractere.
...
<SCRIPT LANGUAGE="JavaScript">
evaluarea funcției() {
[Link]=eval([Link]); }
</SCRIPT>
...
<FORM NAME="formular">
Introduceți o expresie matematică : <INPUT TYPE="text" NAME=saisie MAXLENGTH=40 SIZE=40>
<INPUT TYPE="button" VALUE="evaluare." onClick="evaluare()">
<INPUT TYPE="text" NAME=calcul MAXLENGTH=40 SIZE=40>
</FORM>...
03/02/2021 [Link] 15
•Șir
•convertește obiectul specificat în șir de caractere
zi = new Date(430054663215);//Convertește numărul în dată Lună zi, An etc.
alert (String(jour));
Evadare
•returnează valoarea hexazecimală dintr-un șir de caractere codificat în ISO-Latin-1.
evadează("!&")//retourne%21%26%
03/02/2021 [Link] 16
8
03/02/2021
Obiectele
Obiectele JavaScript sunt fie entități predefinite ale limbajului, fie
creat de programator.
•De exemplu, browserul este un obiect care se numește "navigator
Fereastra browser-ului se numește " fereastră
Pagina HTML este un alt obiect, pe care îl numim „document
•Un formular în interiorul unui "documentul", este de asemenea un obiect.
•Un link hypertext într-o pagină HTML este încă un alt obiect. Se numește " link.
etc...
Obiectele JavaScript pot reacționa la "Evenimente".
Nu toți browserii suportă aceleași obiecte
Acces la proprietățile unui obiect
•[Link]
•[Link] = verte
03/02/2021 [Link] 17
Obiectele
Operatorul New
•Operatorul newest folosit pentru a crea o nouă instanță sau un nou tip de obiect
definit de utilizator sau de unul dintre tipurile de obiecte predefinite,Tablou, Boolean, Date, Funcț ie,
Imagine, Număr, Object, sauȘ ir.
03/02/2021 [Link] 18
9
03/02/2021
Obiectele
•TipulOperatorului
Operatorul typeof returnează un șir de caractere care indică care este tipul de
operândul.
var i = 1;
typeofi;//returneazănumber
var titre="Les raisins de la colère";
typeoftitre;//retourneș ir
var jour = new Date();
typeofjour;//întoarceobiect
var choix = true; typeofchoix;//returneazăboolean
var cas = null; typeofcas;//întoarceobiect
typeofparseFloat;//returneazăfuncț ie
typeofMath;//întoarce obiect (IE 5.*, NS 6.*, NS 4.78, Opera 6.*, Opera 5.*
typeofMath;//returnează funcț ia NS 3.*, Opera 3.*
03/02/2021 [Link] 19
Obiectul string
Proprietate :
•lungime: returnează lungimea șirului de caractere;
•Metode:
•ancora( ): formatează la șir cu eticheta <A> numită;
•b( ): formatează la șir cu eticheta <B>; a revizuit !!
•big( ): formatează șirul cu eticheta <BIG>;
•charAt( ): returnează caracterul aflat într-o anumită poziție;
•charCodeAt( ): returnează codul caracterului aflat într-o anumită poziție;
•concat( ): permite concatenarea a 2 șiruri de caractere;
•fromCharCode( ): returnează caracterul asociat codului;
•indexOf( ): permite găsirea indicelui de apariție a unui caracter într-un șir;
03/02/2021 [Link] 20
10
03/02/2021
Obiectul string
03/02/2021 [Link] 21
Obiectul array
Proprietate :
•lungime: returnează numărul de elemente din tablou;
•Metode :
•concat( ): permite concatenarea a 2 tablouri;
•join( ): convertește un tablou într-un șir de caractere;
•reverse( ): inversează clasamentul elementelor din tablou;
•slice( ): returnează o secțiune a tabelului;
•sort( ): permite clasificarea elementelor din tablou;
03/02/2021 [Link] 22
11
03/02/2021
Obiectele browser-ului
•să fie colecții de obiectecare reunesc sub formă de tabele Javascript toate cele
elemente de tip determinat.
03/02/2021 [Link] 23
03/02/2021 [Link] 24
12
03/02/2021
Obiectul fereastră
•Proprietăți : (accessibile cu IE și N)
•închis: indică faptul că fereastra a fost închisă;
03/02/2021 [Link] 25
Obiectul fereastră
03/02/2021 [Link] 26
13
03/02/2021
Obiectul fereastră
•Metode:
•blur( ): îndepărtează focusul ferestrei;
•close( ): ferme la fenêtre;
•focus( ): pune accentul pe fereastră;
•moveBy( ): deplasează pe o distanță;
•moveTo( ): mută fereastra către un punct specificat;
•open( ): deschide o fereastră nouă;
•print( ): imprimă conținutul feronului;
•redimensionează( ): redimensionează cu un anumit raport;
•resizeTo( ): redimensionează fereastra;
•setTimeout( ): evaluează un șir de caractere după un anumit interval de timp.
03/02/2021 [Link] 27
Obiectul document
Proprietăți:
•applets: returnează colecția de applete java prezentă în document;
•cookie: permite stocarea unui cookie;
•domeniu: indică numele de domeniu al serverului care a adus documentul;
•formulare: returnează colecția de formulare prezente în document;
•imagini: returnează colecția de imagini prezente în document;
•linkuri: returnează colecția de linkuri prezente în document;
•referrer: indică adresa paginii anterioare;
•title: indique le titre du document.
•Metode:
•închide( ): închide documentul în scriere;
•open( ): deschide documentul în modul de scriere;
•write( ): scrie în document;
•writeln( ): scrie în document și efectuează o întoarcere la linie
03/02/2021 [Link] 28
14
03/02/2021
Evenimentele
onMouseout
•laSchimbare
•…
03/02/2021 [Link] 29
Evenimentele
•Eveniment onLoad
•Se produce atunci când o pagină web este încărcată în fereastra browser-ului
Toată pagina (inclusiv imaginile pe care le conține, dacă încărcarea lor este planificată) trebuie
a fost însărcinată pentru a avea loc
03/02/2021 [Link] 30
15
03/02/2021
Evenimentele
•Eveniment onClick
•Se întâmplă atunci când utilizatorul face clic pe un element specific într-o pagină, cum ar fi
un hyperlink, o imagine, un buton, text, etc.
• Poate fi de asemenea declanșat atunci când utilizatorul face clic oriunde pe pagină dacă
a fost asociat nu cu un element specific, ci cu întregul element body
<HTML><BODY>
<INPUT TYPE="Button" Value="cliquează aici" onClick="alert('Clic')">
</CORP<TBODY></HTML>
03/02/2021 [Link] 31
Evenimentele
•Eveniment onMouseover
•Analog cu onClick, este suficient ca utilizatorul să plaseze cursorul mouse-ului pe unul
elementele menț ionate mai sus (link hipertext, imagine, buton, text etc.) pentru a avea loc
Eveniment onMouseout
•Spre deosebire de onMouseover, acest eveniment se produce atunci când pointerul mouse-ului
ieș i din zona de selecț ie a unui element.
<HTML><BODY>
<IMG SRC="[Link]" onMouseOver="src='[Link]';"
onMouseOut="src='[Link]';">
</CORP BODY></CORP HTML>
03/02/2021 [Link] 32
16
03/02/2021
Nomenclatura obiectelor
•În cazul în care obiectul ar fi unic, atunci nu este nevoie de un nume pentru a desemna acest obiect
•Exemple : cazul BODY (un singur BODY pe document), DOCUMENT (un singur DOCUMENT)
pe fereastră
03/02/2021 [Link] 33
Manipularea obiectelor
•Pentru a adresa un obiect, nu este suficient să îi dai numele: trebuie, de asemenea,
preciza ț i „ calea de acces” în arborele structurii
<HTML><BODY
onLoad="[Link]='Bonjour';">
<FORM name="formulare"><INPUT NAME="zona" TYPE="text">
</FORM></BODY></HTML>
•Și dacă numele ferestrei este omis, browserul va folosi implicit fereastra
curente
În cazul cadrelor (frames), este pertinent să se dea numele ferononă.
Este, de asemenea, posibil să omitem [Link]: adresarea reușită deoarece
Există un singur obiect „document” în fereastră
03/02/2021 [Link] 34
17
03/02/2021
Proprietăți •Méthodes
•namenumele câmpului •focusdă focusul (cursorul)
neclarîndepărtează focalizarea
•tiptipul câmpului (text, buton, radio,
•clicsimulează un clic (pe un buton)
checkbox, submit, reset)
Evenimente
valoreavaloare textuale
•peFocalizaredetectează focalizarea
•dimensiunedimensiunea câmpului pe pierdere focusdetectează pierderea de concentrare
•lungimea maximădimensiunea maximă a unui câmp de text onClickdetectează un clic
•verificatcasetă de selectare / buton radio marcat sau nu •pe schimbadetectează schimbările
•persoană cu handicapgrizit
(modificare imposibilă)
•doar citiredoarcitire
•clasănumele clasei de stil
stilnume de stil
03/02/2021 [Link] 35
Proprietăți acceptate
•name, value, defaultvalue, size, maxlength, disabled, readOnly, class, style
•Metode acceptate
•focus, blur
Evenimente acceptate
•onFocus, onBlur, onChange
03/02/2021 [Link] 36
18