Ciao a tutti!
Sto cercando di fare tutto da sola, spulciando il forum alla ricerca di risposte ai miei problemi (sono una dilettante di javascript), ma questo non so nemmeno come cercarlo, nè se sto postando sul forum giusto...
Sto facendo in modo che, leggendo un xml esterno, la pagina carichi il popup solo se c'è un'offerta attiva. Per evitare i popup ho giocato sulla visibilità di un livello.
Trattandosi di un sito in Flash, per evitare che il popup compaia prima della fine dell'introduzione animata, chiamo il javascript da dentro Flash, con un semplice
Premesso che il Flash viene caricato via javascript con il AC_RunActiveContent, il mio script funziona perfettamente tutto su tutti i browser, eccetto che su IE (sia 6 che 7), che si incasina e blocca l'esecuzione del filmato Flash.codice:getURL("JavaScript:checkOfferta();void(0);");
L'errore me lo indica alla riga 21, ma alla riga 21 c'è solo una impostazione css... :S
Fatti vari tentativi ho scoperto che la riga che gli dà problemi è quella segnata in rosso e la situazione non migliora nemmeno se scrivo document.getElementById('offerta');
Temo sia un problema di ordine, per cui vi indico le cose in ordine:
Al primo posto ci sono gli script di visualizzazione del popup:
Di seguito ho inserito gli script di caricamento del flash con _RunActiveContent, e infine, via ASP leggo l'XML e se l'offerta è attiva, con un response.write() imposto lo script che verrà poi invocato da Flash, ovvero:codice:<!-- function inizializza(){ //variabili browsers if (document.all) { documento="document.all"; parA="["; parB="]"; } else if (document.layers){ documento="document.layers"; parA="["; parB="]"; } else if (document.getElementById) { documento="document.getElementById"; parA="("; parB=")"; } offerta = eval(documento+parA+"'offerta'"+parB); } function resize(img, tit) { //recupero le dimensioni dell'immagine var myImage = new Image(); myImage.src = 'http://www.miosito.it/images/offerte/'+ img; var w = Number(myImage.width) + 40; var h = Number(myImage.height) + 80; //imposto le dimensioni del DIV che contiene l'immagine offerta.width = w; offerta.height = h; offerta.style.display = "block"; } function chiudi() { //chiusura popup offerta.style.display="none" } function apriOfferta() { //modifico le dimensioni della finestra di popup var h = screen.availHeight; window.open('http://www.miosito.it/offerta_del_mese.html','popup','scrollbars=yes,resizable=yes,width=720,height='+ h +',status=no,location=no,toolbar=no'); return false; } //-->
testato su tutti gli altri browser funziona... qualche idea?...codice:function checkOfferta() { checkOfferta = true; inizializza(); resize('volantino.jpg', 'Offerta Speciale'); }
Grazie!![]()

Rispondi quotando