Javascript

postat acum 2 ani de Stefanescu Mihai in categorie HTML

Un script este un mic program interactiv pe site-ul tau. De exemplu, un script poate genera pop-up-uri, meniuri drop-dopwn, etc. Acestea pot fi scrise in Javascript sau VBScript.Puteti scrie diverse mici functii, numite event handlers folosind unul dintre cele doua limbaje de scripting spuse mai sus (javascript si Vbscript).

In prezent Javascript este ce-l mai folosit limbaj de scripting, VBScript fiind omis chiar si de unele dintre browserele majore.

Puteti tine codul Javascript intr-un fisier separat cu extensia .js si sa-l includeti in documentul HTML sau puteti scrie codul javascript in documentul HTML intre tag-urile <script>.

JavaScript Extern

Daca ai de gand sa definesti o functie ce va fi folosita in mai multe documente HTML atunci ar fi mai bine sa tii totul intr-un fisier extern.

Presupune ma avem urmatorul cod intr-un fisier script.js

function Salut()
{
    alert("Salutari comunitatea Invata-Programare");
}

Acum hai sa folosim acest cod intr-un document HTML

<!DOCTYPE html>
<html>
<head>
<title>Javascript External Script</title>
<script src="/js/script.js" type="text/javascript"/></script>
</head>
<body>
<input type="button" onclick="Salut();" name="ok" value="Apasa!"  />
</body>
</html>

JavaScript Intern

Puteti scrie scripturi direct documentul HTML. De obicei acestea sunt scrise  in tag-ul <script> din head-ul documentului, dar nu este neaparat necesar sa fie scris in head.

<!DOCTYPE html>
<html>
<head>
<title>Javascript Intern</title>
<script type="text/javascript">
function Salut(){
   alert("Salut Invata-Programare!");
}
</script>
</head>
<body>
<input type="button" onclick="Salut();" name="ok" value="Apasa"  />
</body>
</html>

Event Handlers

Event handlers sunt simple functii js ce pot fi pornite la diverse miscari ale mouse-ului sau la diferite butoane ale tastaturii.

In urmatorul exemplu este explicat modul in care poate fi scris un event handler.

Scriem o functie EventHandler() in header-ul documentului HTML si apoi o apelam de fiecare data cand cursorul este deasupra unui paragraf.

<!DOCTYPE html>
<html>
<head>
<title>Event Handler</title>
<script type="text/javascript">
function EventHandler(){
   alert("Acesta este un event handler!");
}
</script>
</head>
<body>
<p onmouseover="EventHandler();">Pune mouse-ul deasupra caestui paragraf</p>
</body>
</html>

 Scripturile si Browserele vechi

Chiar daca majoritatea browserelor suporta JavaScript, exista cateva care nu o fac. Daca un browser nu permita rularea de cod javascript, va fi afisat codul js pe ecran, deci … atunci ar trebuii sa afisati un mesaj pe eracnul utilizatorului.Pentru a preveni afisarea codului js sau vb pe ecran puteti pune codul in comentarii:

Exemplu JavaScript:
<script type="text/javascript">
<!--
document.write("Salutari Javascript!");
//-->
</script>

Exemplu VBScript:
<script type="text/vbscript">
<!--
document.write("Salutari VBScript!")
'-->
</script>

Elementul <noscript>

Puteti, cum am spus si mai sus, sa dati informatii aditionale utilizatorilor cu browsere ce nu suporta javascript sau cu javascriptul oprit folosind tag-ul <noscript>.

Exemplu JavaScript:
<script type="text/javascript">
<!--
document.write("Salut Javascript!");
//-->
</script>
<noscript>Browserul tau nu suporta Javascript!</noscript>

Exemplu VBScript:
<script type="text/vbscript">
<!--
document.write("Salut VBScript!")
'-->
</script>
<noscript>Browserul tau nu suporta VBScript!</noscript>

 Limbajul de scripting Default

Poate va exista o situatie in care va trebuii sa incluzi mai multe scripturi in document folosind mai multe tag-uri <script>. Poti specifica un limbaj de scripting default pentru toate tag-urile <script> (pentru a-ti usura munca si a scrie mai putin cod…).

<meta http-equiv="Content-Script-Type" content="text/JavaScript" />

 

Sunt un tanar programator din Bucuresti ce lucreaza in PHP/Mysql (MySqli/PDO), Laravel, CodeIgniter, MySQL, PostgreSQL, Wordpress, HTML5/CSS3, Sass, Photoshop si multe altele.
Google+ Community Facebook Group
Acest articol a fost mutat de pe vechea platforma.
Pentru orice eroare aparuta la mutare va rog sa ma contactati!