Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Esercitazioni JavaScript: Scherzi, Follie, Indovina il Numero, Eadweard Muybridge, Ridimen, Esercizi di Elementi di Informatica

Esercizi pratici per imparare a utilizzare javascript. Comprende istruzioni per creare pagine web interattive con bottoni, eventi onmouseover, onload, onchange, e funzioni per generare numeri casuali, cambiare immagini, disegnare su una tabella e animare elementi. Le istruzzioni sono dettagliate e illustrate con codice html e javascript.

Tipologia: Esercizi

2018/2019

Caricato il 31/05/2019

roberta-petrelli-1
roberta-petrelli-1 🇮🇹

4

(3)

11 documenti

1 / 12

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
ESERCIZI DI JAVASCRIPT: INTERFACCIA E CODICE
Negli esercizi che seguono il codice JavaScript è stato in parte o totalmente scritto da me. Manca
però la pagina html, nella quale il codice deve essere inserito e che costituisce l’interfaccia fra il
programma in JS e l’utente (colui che usa il programma).
La pagina deve essere realizzata usando il linguaggio HTML e i fogli stile, come imparato lo scorso
anno.
pf3
pf4
pf5
pf8
pf9
pfa

Anteprima parziale del testo

Scarica Esercitazioni JavaScript: Scherzi, Follie, Indovina il Numero, Eadweard Muybridge, Ridimen e più Esercizi in PDF di Elementi di Informatica solo su Docsity!

ESERCIZI DI JAVASCRIPT: INTERFACCIA E CODICE

Negli esercizi che seguono il codice JavaScript è stato in parte o totalmente scritto da me. Manca però la pagina html, nella quale il codice deve essere inserito e che costituisce l’interfaccia fra il programma in JS e l’utente (colui che usa il programma).

La pagina deve essere realizzata usando il linguaggio HTML e i fogli stile, come imparato lo scorso anno.

ESERCIZIO UNO: SCHERZO

Sfruttando le potenzialità del JS proveremo a realizzare una pagina di scherzo. Per prima cosa realizzate una pagina con un bottone fatta così:

Associate al bottone l’evento onMouseOver ed eseguite in risposta all’evento la seguente funzione:

function Scherzo() { var STOP = document.getElementById("STOP"); var x = Math.floor(Math.random() * 500); var y = Math.floor(Math.random() * 500); STOP.style.position = "absolute"; STOP.style.top = x + "px"; STOP.style.left = y + "px"; }

ESERCIZIO TRE: INDOVINA IL NUMERO

Creare una pagina per il gioco di Indovina un numero:

All’avvio il programma genera un numero casuale compreso fra 0 e 100. Il giocatore deve indovinarlo scrivendo il proprio tentativo e premendo il tasto Controlla. Il programma dice al giocatore se il tentativo fatto è più piccolo o più grande del numero da indovinare.

Il codice JS da usare è il seguente:

function controlla() { // You can store references to the value and the // guesses textarea in local function variables. var tentativo = document.getElementById("tentativo").value; var conto = document.getElementById("conteggio").value; conto = Number(conto) + 1; document.getElementById("conteggio").value = conto;

// First, if the tentativo is the same, just show the answer. // Append onto the textarea the result. if (tentativo == da_indovinare) { alert("Indovinato!") ; genera(); } else if (tentativo > da_indovinare) { alert("Troppo alto"); } else { alert("Troppo basso"); } }

// Randomly generate a number function genera() {

da_indovinare = Math.floor(Math.random()*100); document.getElementById("conteggio").value = 0; alert("Generato numero fra 0 e 100"); document.getElementById("tentativo").focus(); }

La funzione genera() viene chiamata al caricamento della pagina (evento onLoad sull’elemento body). La funzione controlla() invece è associata al click sul bottone Controlla.

ESERCIZIO QUATTRO: Eadweard Muybridge

Eadweard Muybridge fu un fotografo inglese dell’800, pioniere nello studio del movimento e delle animazioni. Famose sono le sue serie fotografiche di animali e persone in movimento:

Vogliamo realizzare una pagina hml in cui vengono visualizzati i diversi fotogrammi di una delle serie di Muybridge. Ogni fotogramma corrisponde a una immagine separata e tutte le immagini

devono essere salvate nella stessa cartella e numerate progressivamente (es. img1.jpg, img2,jpg eccetera). Scegliete su Internet una serie di Muybridge e separate i singoli fotogrammi salvando ciascuno in un file separato e numerato come spiegato sopra (usare Paint o un altro programma di grafica, se necessario, per ritagliare i fotogrammi).

All’inizio al centro della pagina (usate il posizionamento con i fogli stile per ottenere una corretta centratura) visualizzate il primo fotogramma della serie. Facendo click sull’immagine, viene visualizzato il fotogramma successivo e così via ad ogni click. Dopo l’ultimo fotogramma, la visualizzazione ricomincia dal primo.

Il codice da usare è il seguente:

Lo script qui sopra si basa su 4 immagine numerate da 1 a 4. Se il numero di immagini usate è diverso, cambiate i valori.

ESERCIZIO SEI: IL GIOCO DEL TRIS

ESERCIZIO 6.

Disegnare o procurarsi tre immagini quadrate di dimensioni uguali. Una delle tre immagini dev’essere un quadrato bianco vuoto, una deve contenere un cerchio e un’altra una croce.

Creare una pagina html con una tabella 3 x 3 e in ogni cella della tabella mettere l’immagine col quadrato bianco vuoto.

Associate una funzione all’evento onclick su ogni immagine contenuta nella tabella (usate la parola chiave this per indicare l’immagine corrente).

Scrivete una funzione associata all’evento onclick che cambia l’immagine con quella del cerchio o con quella della croce (alternativamente: la prima volta che si fa click il cerchio, la seconda volta la croce e così via).

ESERCIZIO 6.

Migliorate il programma in modo tale che, facendo click su una casella non vuota, non venga sostituito il simbolo presente.

ATTENZIONE:

Per verificare se una cella è vuota, la cosa più semplice è testare con un IF se l’immagine corrispondente è quella del quadrato vuoto.

A tale scopo, si può usare document.getElementById per recuperate il valore dell’attributo src dell’immagine su cui si è fatto click.

Tuttavia, in JS, quando leggo l’attributo src di un’immagine, non ottengo solo il nome dell’immagine, ma l’intero percorso di essa sul disco.

Supponendo che l’immagine abbia un id=”img1”, le istruzioni da usare per estrarre il nome dell’immagine dal valore di src sono le seguenti:

var fullPath = document.getElementById("img1").src; var filename = fullPath.replace(/^.*[\/]/, '');

ESERCIZIO SETTE: CAMBIARE I COLORI

Si vuole realizzare una pagina con un form e due selettori mediante i quali è possibile scegliere i colori del testo e dello sfondo:

Usare due eventi onchange associati ai due elementi select del form. Nelle corrispondenti funzioni usare gli stili per cambiare colore dello sfondo e del testo dell’elemento body, come per esempio:

document.getElementById("pagina").style.backgroundColor = document.getElementById("selettore_sfondo").value;

ESERCIZIO NOVE: OROSCOPO

ESERCIZIO 9.

Costruite una pagina html con un form, un selettore e un paragrafo di testo:

Cambiando il segno zodiacale scelto col selettore, cambia la frase visualizzata nel paragrafo sotto la scritta OROSCOPO. Usare l’evento onchange e una struttura di selezione di questo tipo:

if (segno == "niente" ) document.getElementById("paragrafo").innerHTML ="Nessun segno selezionato"; else if (segno == "ariete") document.getElementById("paragrafo").innerHTML ="bla bla bla "; else if (segno == "toro") document.getElementById("paragrafo").innerHTML ="bla bla bla"; ….

Sostituire i bla bla con previsioni più o meno catastrofiche a piacere.

ESERCIZIO DIECI: ANIMAZIONI

ESERCIZIO 10.

Ecco il codice per animare un elemento div con id uguale a “content”:

var div ; var msec = 30; var idTO ; var pos=0;

function init() { div = document.getElementById('content'); //DIV da animare div.style.left = pos + 'px'; //Punto di partenza dell'animazione animate(); //Chiamata alla funzione che anima il div }

function animate() { pos=pos+1;//Sposta il div verso destra di un pixel alla volta div.style.left = pos + 'px'; idTO = setTimeout(animate,msec);//Ripete lo spostamento per tot millisecondi }

Create in una pagina html un elemento div con id = “content” e formattatelo col seguente stile:

#content { position:absolute; left:10px; top:10px; width:300px; background:#336699; border:1px solid #003366; padding:5px; color:#FFFFFF; }

Applicate l’evento onload sull’elemento body e associategli la funzione init()

ESERCIZIO 10.

Aggiungete un pulsante alla pagina che permette di fermare (se premuto una volta) e riavviare (se premuto due volte) l’animazione. Per fermare l’animazione usate la seguente funzione:

function stopAnimate() { clearTimeout(idTO);//Cancella l'animazione avviata da setTimeout }