Visualizzazione risultati 1 fino 3 di 3

Discussione: Generare popup e sapere quando viene chiuso

  1. #1
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Question Generare popup e sapere quando viene chiuso

    Codice HTML:
    <script>
    function PopUp(){
    	RichiestaPopup = window.open('url','','width=600px,height=400px');
    	RichiestaPopup.onbeforeunload = function(){alert('chiuso');};}
    }
    </script>
    <a onclick="PopUp()">Apri</a>
    Come mai quando viene chiuso non fa niente di quello che c'è scritto nella funzione?
    Ho provato a cercare ma a quanto pare gli alert non possono più essere utilizzati, per cui ho provato a svolgere qualche altra azione ma niente.
    Non funziona neanche con jQuery.

    Grazie come sempre

  2. #2
    L'avatar di javascripter
    javascripter non è connesso Moderatore
    Data registrazione
    14-02-2010
    Messaggi
    1,114

    Predefinito

    L'evento onbeforeunload può essere utilizzato solo per visualizzare un messaggio prima della chiusura della pagina e nient'altro.
    Viene preso solo in considerazione il testo che viene restituito tramite return.

    Devi, dunque, utilizzare l'evento onunload ma solo dopo che il popup è stato caricato (onload).
    Perché appena apri un popup prima viene aperta una pagina vuota (e.g. about:blank, se usi firefox) e poi viene impostato l'url che passi alla funzione open causando un trigger dell'evento unload prima che il popup sia stato chiuso effettivamente...

    Codice:
      var popup = open("http://...", "", "...");
      
      if(popup) {
          popup.onload = function() {
              popup.onunload = function() {
                  alert("Saluti!");
              };
        };
      } else {
      	alert("Apertura popup fallita!");
      }

  3. #3
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Stavo settando un intervallo che controllava ogni secondo lo stato della finestra, per farti capire il mio livello di disperazione
    Grazie mille!

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •