Ciao Sto usando il plugin jQuery fancybox per visualizzare mappe di bing quando qualcuno inserisce un indirizzo in una casella di testo e preme il pulsante di invio accanto. E una fancybox viene caricata e viene visualizzata una mappa per quell'indirizzo. Funziona bene con la mia applicazione, ma il problema è che funziona bene solo su una pagina e dall'altra, quando lo carico, mi dà un errore dicendo che fancybox non è una funzione. Vedo questo errore nella console degli errori e nella console firebug. Non sono sicuro di quale potrebbe essere il problema. Lo stesso codice funziona in un'altra pagina, ma non su questo?Fancybox non è una funzione
$("<a href=\"#showmap\">Map</a>").fancybox is not a function
Sono sicuro che non si tratta di un problema di riutilizzabilità. Ma quando provo a vedere se i file originali di fancybox sono stati caricati, vengono caricati con dom, quindi potrebbe non essere un problema reale. Ma non sono in grado di capire cos'altro potrebbe essere il problema.
Questo è il mio codice
abbr: è solo un po 'di testo. Ho div diverse in base a ciò che l'utente seleziona. E ogni div avrebbe i suoi controlli, che comincerebbero da quel testo e saranno aggiunti con le proprie definizioni come mapresults, decValLat, decValLon ecc.
ex: abbr >> est e quindi gli ID sarebbero estmapresults, eastdecValLat, eastdecValLon ecc
function showMapFancybox(abbr){
var abbr;
$('#'+abbr+'mapresults').hide();
$('<a href="#showmap">Map</a>').fancybox({
overlayShow: true,
onClosed: function() {
$('#'+abbr+'mapresults').show();
map_latdec = $('#decValLat').attr('value');
map_longdec = $('#decValLon').attr('value');
map_latdeg = $('#degValLat').attr('value');
map_longdeg = $('#degValLon').attr('value');
$('#'+abbr+'decValLatsub').val(map_latdec);
$('#'+abbr+'decValLonsub').val(map_longdec);
$('#'+abbr+'degValLatsub').val(map_latdeg+'N');
$('#'+abbr+'degValLonsub').val(map_longdeg+'W');
}
}).click();
};
Perché dovresti ridefinire abbr in quanto argomento della tua funzione? – Harmen
Ho appena modificato la domanda. Spero che aiuti. – macha
Mi sembra che la pagina su cui non sta lavorando manchi il file javascript che definisce 'fancybox'. Hai controllato di includere gli stessi file javascript in entrambe le pagine? – andrewle