L'approccio di Richard sta funzionando molto bene.
Si potrebbe anche farlo estendendo Galleria con-la funzione pronta:
JS
Galleria.run('.galleria', {
// configure
autoplay: true,
lightbox: true,
idleMode: true,
// extend theme
extend: function() {
var gallery = this; // "this" is the gallery instance
//fullscreen button
this.addElement('fscr');
this.appendChild('stage','fscr');
var fscr = this.$('fscr').click(function() {
gallery.toggleFullscreen();
});
// this.addIdleState(this.get('fscr'), { opacity:0 });
}
});`
E se si desidera utilizzare un'icona fontAwesome per l'icona di ingrandimento è possibile implementarlo come segue (altri stili CSS vedi post di Richard):
CSS
.galleria-fscr:before {
content: "\f065"; /* char code for fa-expand */
position: absolute;
font-family: FontAwesome;
color: #fff;
}
(tenere a mente per includere il foglio di stile di fontAwesome con <link rel="stylesheet" href="css/font-awesome.min.css">
)
ancora sto avendo un problema con il pulsante di ingrandimento. Se ci si libra sopra, non diventa bianco e rimane grigio. Forse qualcosa con lo stato IDLE è sbagliato, ma non ho ancora trovato una soluzione. (Se rimuovo la riga di codice con this.addIdleState(...)
funziona il passaggio del mouse. Devo fare altri test qui.)
Vorrei anche cambiare l'icona da ingrandire a icona di riduzione a icona una volta che lo schermo è a schermo intero, ma io non so come farlo ancora Questo è anche nella mia lista delle cose da fare.
Aggiornamento 07.02.2014
ho capito come risolvere questi due problemi:
Per il rilascio "stato IDLE" - Ho rimosso lo stato IDLE. Perché non mi interessa se questi controlli sono permanenti e ora il volo stazionario funziona come previsto. Forse controllerò un'altra soluzione più tardi.
Per cambiare un'icona al clic si può fare con i CSS e jQuery:
Aggiungi una regola imperativa CSS sotto la prima prima del filtro dell'icona di ingrandimento nella CSS esempio:
.galleria-fscr.minimize:before{
content: "\f066";
}
Aggiungere questi JS linea dopo gallery.toggleFullscreen()
- che alterna l'icona con ogni clic tra il normale prima di stile e la mi nimize prima di stile:
$(".galleria-fscr").toggleClass("minimize");
Questo funziona anche per un pulsante di riproduzione/resume (resto del codice è la simillar al codice a schermo intero):
JS
...
gallery.playToggle();
$('.galleria-pauseResumeBtn').toggleClass("resume");
grazie! mi mancava il .data (..) tho ora che posso chiamarlo, vedo un bug nello styling da qualche parte ... per favore controlla questa pagina: http://alturl.com/ycfy4 e prova ad attivare lo schermo intero usando firebug o qualsiasi altra cosa ... c'è qualcosa di strano, spero che tu possa aiutarmi a capirlo :) –
@DanyKhalife cosa intendi con "attivare lo schermo intero usando firebug"? Hai bisogno di un trigger, come un link, che lo attiva al clic. – David
sì, ma nella Console di Firebug, è possibile eseguire comandi Javascript. nel tuo codice hai questo: '$ ('# galleria'). data ('galleria'). toggleFullscreen();' se lo copi e lo incolli nella console di firebug (mentre nella pagina che contiene la galleria), il codice verrà eseguito come se fosse stato attivato da un pulsante su cui è stato fatto clic –