Podejście Richarda działa bardzo dobrze.
Można również zrobić to poprzez rozszerzenie Galleria-out z gotowej funkcji:
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 });
}
});`
A jeśli chcesz użyć ikonę fontAwesome ikona maksymalizacji można wdrożyć go w następujący sposób (inne style CSS patrz post Richarda):
CSS
.galleria-fscr:before {
content: "\f065"; /* char code for fa-expand */
position: absolute;
font-family: FontAwesome;
color: #fff;
}
(należy pamiętać, aby zawierać arkusz stylów z fontAwesome z <link rel="stylesheet" href="css/font-awesome.min.css">
)
ciągle mam jeden problem z przycisku maksymalizacji. Jeśli się nad tym kręcę, nie robi się biały i pozostaje szary. Może coś ze stanem IDLE jest złe, ale jeszcze nie znalazłem rozwiązania. (Jeśli usunę linię kodu z this.addIdleState(...)
, unoszą się prace, muszę wykonać więcej testów tutaj.)
Chciałbym również zmienić ikonę z ikony maksymalizacji na ikonę minimalizacji, gdy ekran jest na pełnym ekranie, ale ja nie wiem jak to jeszcze zrobić. To również na mojej liście rzeczy do zrobienia.
Aktualizacja 07.02.2014
zorientowali się, jak rozwiązać te dwa problemy:
Dla „stanie spoczynku” problem - Usunąłem stanu bezczynności. Ponieważ nie obchodzi mnie, czy te elementy sterujące są na stałe, a teraz zawisanie działa zgodnie z oczekiwaniami. Może później sprawdzę inne rozwiązanie.
Aby zmienić ikonę na kliknięciem można zrobić z CSS i jQuery:
Dodaj regułę nadrzędnym CSS poniżej zanim filtr ikonę maksymalizacji w CSS np
.galleria-fscr.minimize:before{
content: "\f066";
}
Dodaj te JS linia po gallery.toggleFullscreen()
- który przełącza ikonę z każdym kliknięciem pomiędzy normalną przed stylu i MI nimalizuj przed styl:
$(".galleria-fscr").toggleClass("minimize");
ta działa również na przycisk odtwarzania/wznowienie (reszta kodu jest zblizonym do kodu pełnym ekranie):
JS
...
gallery.playToggle();
$('.galleria-pauseResumeBtn').toggleClass("resume");
dzięki! brakowało mi .data (..), teraz gdy go nazywam, widzę błąd w stylizacji gdzieś ... sprawdź tę stronę: http://alturl.com/ycfy4 i spróbuj przełączyć się na pełny ekran używając firebug lub cokolwiek ... jest coś podejrzanego, mam nadzieję, że możesz mi pomóc to rozgryźć :) –
@DanyKhalife co masz na myśli mówiąc "przełączanie na pełny ekran za pomocą firebuga"? Potrzebujesz spustu, takiego jak link, który przełącza go na kliknięcie. – David
Tak, ale w Firebug's Console możesz uruchamiać polecenia JavaScript. w twoim kodzie masz to: '$ ('# galleria') .dane ('galleria'). toggleFullscreen();' jeśli to skopiujesz i wkleisz w konsoli firebug (na stronie zawierającej galerię), kod będzie działał tak, jakby został wywołany kliknięciem przycisku –