2013-08-31 11 views
6

In Fancybox 2.1.5 Voglio sostituire i controlli predefiniti con i miei pulsanti personalizzati (nuovi pulsanti preloader + close/next/prev su sprite).Come sostituire i controlli predefiniti con i pulsanti personalizzati in Fancybox 2.1.5?

Non so come regolare correttamente il codice css. Ho provato a modificare il codice CSS as follows, ma c'è qualcosa che non va, l'icona 'successiva' appare nell'angolo in alto a destra invece del pulsante 'Chiudi'.

È possibile vedere il mio codice su this gist.

risposta

16

Non c'è bisogno di pasticciare con il file CSS originale, utilizzare l'opzione tpl API invece come

$(".fancybox").fancybox({ 
    tpl: { 
     closeBtn: '<a title="Close" class="fancybox-item fancybox-close myClose" href="javascript:;"></a>' 
    } 
}); 

Avviso che ho aggiunto la classe myClose in modo da poter impostare le proprie specifiche proprietà CSS, immagine di sfondo , ecc come

.myClose { 
    height: 50px; 
    width: 50px; 
    background: #ff0000; 
} 

Vedi JSFIDDLE tanto per fare un esempio.

Fare lo stesso per le icone prev/next. Controlla il API documentation (search for tpl)

+0

Grazie per i suggerimenti. Ma in questo modo sembra molto più complicato della semplice modifica del file CSS, che è abbastanza piccolo e semplice. Il plugin Fancybox è usato in Prestashop. Non so dove sia necessario il file tpl per questo. Alterare il modello di prestashop sarà più complesso, secondo me. Ho regolato il file jquery.fancybox.css, funziona come richiesto, ad esempio: http://codepad.org/NXqQL6a0. Non sono sicuro di alcuni dettagli qui: 'margin-top: -22px; margin-left: -22px; (riga 88,89) 'e' margin-top: -15px; (riga 137) '- questi valori sono collegati con le dimensioni dei pulsanti originali o sono indipendenti da essi? – triwo

+1

@riwo il giorno in cui prestashop decide di aggiornare fancybox, quindi sarà necessario personalizzare nuovamente il file css. Questo perché non è una buona idea pasticciare con i file originali (ma dipende da te) ... e 'tpl' non è un file, è un'opzione che si usa nello script di inizializzazione fancybox personalizzato per scavalcare ciò che è nel File CSS senza modificarlo – JFK

+0

Proverò lo script di inizializzazione fancybox personalizzato, ma ora voglio solo completare con i mod CSS e ottenere risposte sulla mia domanda. – triwo

Problemi correlati