Come creare una funzione che chiama una funzione
-
12-11-2019 - |
Domanda
Sto usando un file jquery che ha una funzionalità di zoom immagine:
http://www.albanx.com/jslibs/axzoomore.js
.Tutto funziona bene. Ma ora ho bisogno di una funzionalità che non è inclusa con il plugin. Sull'evento di attivazione dello zoom, il livello di zoom predefinito deve essere modificato.
Ho provato qualcosa del genere:
imageLoaded:function()
{
return this.each(function()
{
var $this = $(this);
$this.zoomInOut(1.5);
// zoomInOut(1.5);
});
},
.
Ma senza fortuna ... Dal momento che non sono sicuro di come le funzioni funzionano in jQuery, e lo Zoominout è la funzione all'interno della funzione come ho capito ...
Qualsiasi aiuto è apprezzato.
Aggiornamento
La funzione visualizzata prima è integrata in questo file JS:
http://www.ifmi.lt/public/axzoomoer/axzoomore- 1.5.js (linea 382).
Per coloro che non conoscono Hot L'AXZOOMER funziona: è necessario fornire 2 immagini una delle dimensioni normali, un'altra grande dimensione per lo zoom. Quindi lo zoom iniziale iniziando ridimensionando la piccola immagine, quando la scala dell'immagine è più di 1.2, la grande immagine è caricato.
Nel mio codice da quando sto usando la libreria jquery.reel
anche io personalizzato un po 'l'approccio AXZOOMER. Quando si fa clic sul pulsante Zoom, questa funzione viene chiamata:
.
function zoomImage ()
{
var value = Number ( $('#image360').attr('src').split ( '_' )[1].split ( '.' )[0] );
$('#zoom-content').load( initiateZoom );
$('#zoom-content').attr ( 'src', 'products/1/' + value + '.jpg' );
$('#zoom-content').attr ( 'src-big', 'product/1/zoom/' + value + '.jpg' );
$('#zoom-content').axzoomer({
'maxZoom':3,
'opacity':0.5,
'sensivity':17,
'showControls':false,
'zoomIn':'',
'zoomOut':''
});
}
Dopo che la piccola immagine è stata caricata, viene chiamata la funzione initiateZoom
.
La funzione axzoomer ( 'imageLoaded' );
è raggiungibile da JS, viene chiamato quando viene caricata la piccola immagine:
.
function initiateZoom()
{
$('#zoom-content').axzoomer ( 'enable' );
$('#zoom-content').axzoomer ( 'imageLoaded' );
}
Ma all'interno dell'immaginario (nella funzione AXZOROMER.JS a partire dalla riga 382) non riesco a raggiungere la funzione Zoominout, per ingrandire l'immagine sul carico iniziale.
Soluzione
Okay, ha fatto un approccio diverso al problema ed è stato risolto in pochissimo tempo.
Ecco il sollution.
Il file: http://www.ifmi.lt/public/AXZOOMER / AXZOOMER-1.5 + .js
- .
- Aggiunto nuovo parametro impostazione: Initialzoom (LINE 32)
- Aggiunta il controllo per il parametro inizializoom (riga 382)
La nuova funzionalità controlla il parametro inizializoom e, se esiste, ingrandisce l'immagine con tale importo dal centro dell'immagine quando l'AX-Zoom si inizializza.