Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Finestre di Dialogo e Transizioni

Come ottenere effetti di trasizione personalizzati tra le pagine e far apparire dialog box in stile con l'applicazione
Come ottenere effetti di trasizione personalizzati tra le pagine e far apparire dialog box in stile con l'applicazione
Link copiato negli appunti

I template di pagina che abbiamo visto nelle scorse lezioni possono risultare adatti per buona parte dei contenuti del sito, ma in alcuni casi è necessario spostare l'attenzione dell'utentesu un contenuto specifico.

A questo scopo si possono realizzare delle dialog box da sovrapporre alle pagine del sito:

<a href="dove-siamo.html" data-rel="dialog">Dove siamo</a>

Come dall'esempio precedente, ogni pagina collegata ad un attributo data-rel="dialog" verrà aperta in una finestra di dialogo.

Per mantenere l'uniformità dell'interfaccia, è necessario applicare alle finestre di dialogo lo stesso markup delle pagine generiche, ma non è necessario importare CSS e file JavaScript della libreria, in quanto sarà caricato solo il contenuto del tag body:

<!DOCTYPE html>
<html>
	<head>
	<title></title>
</head>
<body>
	<div data-role="page"> 
		<div data-role="header">
			<h1><!-- titolo finestra di dialogo -->	</h1> 
		</div> 
		<div data-role="content">
			 <!-- contenuto finestra di dialogo -->
			 <a href="#" data-rel="back">Chiudi</a>
		</div>
	</div>
</body>
</html>

Per default jQuery Mobile inserisce un tasto per chiudere la finestra di dialogo nell'angolo in alto a sinistra dell'header, tuttavia è possibile realizzare questo controllo includendo un semplice link con data-rel="back", nello stesso modo in cui realizzeremmo un link back per la navigazione classica. Ecco l'

[!] Ci sono problemi con l'autore. Controllare il mapping sull'Author Manager

.

Transizioni fra le pagine

Come avrete già notato, la transizione fra una pagina e l'altra del sito avviene con un'animazione di scorrimento da destra verso sinistra.

Questa animazione sfrutta le

[!] Ci sono problemi con l'autore. Controllare il mapping sull'Author Manager

, risultando molto fluida e performante nei dispositivi più avanzati (ad esempio su Android e iOS), ma escludendo così tutti gli altri. In realtà le scarse risorse dei dispositivi mobile renderebbero troppo scattosa un'animazione via JavaScript compromettendo l'esperienza utente.

Transizioni personalizzate

Oltre alla transizione predefinita è possibile definire transizioni specifiche fra una pagina e l'altra e per l'apertura delle finestre di dialogo in modo da diversificare, ad esempio, il passaggio fra le sezioni del sito e le pagine di una stessa sezione.

Le transizioni disponibili sono slide (di defaut), slideup, slidedown, pop, fade e flip. Di queste, l'ultima non viene renderizzata correttamente in molti dispositivi Android che non supportano le trasformazioni CSS 3D ed è perciò consigliabile il suo utilizzo per applicazioni che supportino esclusivamente dispositivi iOS.

Sulla documentazione ufficiale del progetto sono disponibili delle

[!] Ci sono problemi con l'autore. Controllare il mapping sull'Author Manager

delle transizioni supportate. Ecco come potremmo applicarle per i link nella pagina About della nostra applicazione:

<!-- ... -->
<div data-role="page" id="about">
	<div data-role="header">
		<a href="index.html" data-rel="back">back</a>
		<h1>About</h1>
	</div><!-- /header -->
	<div data-role="content">
		<p>Benvenuti in Music Manager.</p>
		<p>...</p>
		<p>
			<!-- diversifico la transizione fra pagine interne -->
			<a href="#mission" data-transition="slideup">Mission >></a>
		</p>
		<p>
			<a href="index.html">Homepage</a>
		</p>
	</div><!-- /content -->
	<div data-role="footer">
		<h4>Credits: Marco Solazzi e <a href="http://www.html.it" target="_blank">HTML.it</a></h4>
	</div><!-- /footer -->
</div><!-- /page -->
<!-- ... -->

Se vogliamo ottenere un effetto riavvolgimento è anche possibile invertire l'andamento della transizione aggiungendo data-direction="reverse" al link in questione.

Questa caratteristica è già presente di default in tutti i pulsanti con data-rel="back" per migliorare il feedback visivo durante la navigazione del sito.

[!] Ci sono problemi con l'autore. Controllare il mapping sull'Author Manager

la nostra applicazione una volta personalizzate le transizioni.

Questo articolo contiene link di affiliazione: acquisti o ordini effettuati tramite tali link permetteranno al nostro sito di ricevere una commissione nel rispetto del codice etico. Le offerte potrebbero subire variazioni di prezzo dopo la pubblicazione.

Ti consigliamo anche