Visualizzazione risultati 1 fino 11 di 11

Discussione: [JS] chiusura di una finestra [no popup]

  1. #1
    L'avatar di NoWhere
    NoWhere non è connesso Moderatore
    Data registrazione
    14-02-2003
    Residenza
    New Balarm
    Messaggi
    4,118

    Question [JS] chiusura di una finestra [no popup]

    allor, io conosco questi 2 codici che fanno si che un popup venga chiuso dall'utente se quest'ultimo clicca su, però a me serve un codice che faccia chiudere la finestra del browser [per intenderci non un popup, ma proprio la finestra, scheda di ff, ecc...]
    qualcuno mi sa dire??
    ho presupposto che esista solo in java, ma se esiste anche in altro benvenga!! ^^

  2. #2
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Non è possibile, se non dopo richiesta di conferma all'utente, chiudere da script una window che l'utente stesso ha "creato" e aperto di sua spontanea volontà.
    Per quello trovi in giro codici per chiudere popup, perché popup = "window generata via client scripting" (window.open), quindi per es. javascript crea, javascript può distruggere, ma se l'utente "crea" e lo script vuole distruggergli la sua finestra quantomeno deve essere avvertito che lo script sta tentando di chiuderla.
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  3. #3
    Guest

    Predefinito

    Con questo script chiudi una pagina ma solo per internet explorer:
    Codice HTML:
    <head>
    <script type="text/javascript">
    self.opener=self
    </script>
    <body onload="window.close()">
    Ciao!

  4. #4
    L'avatar di NoWhere
    NoWhere non è connesso Moderatore
    Data registrazione
    14-02-2003
    Residenza
    New Balarm
    Messaggi
    4,118

    Predefinito

    hera, la pagina che vorrei chiudere é una poagina che ho generato io no che ha aperto l'utente!!
    [come se fosse un popup ma invece é una nuova finestra]

  5. #5
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Se l'hai creata tu, come la crei puoi anche distruggerla, basta che ti conservi anche un riferimento a quella finestra. Perciò ecco come devi aprire:
    Codice:
    var second_window = window.open ("href.htm", "target", "parametri");
    così puoi chiudere in questo modo (non mi ricordo se è esatto):
    Codice:
    second_window.close ()
    Naturalmente se la pagina che chiude non è la stessa di quella che apre dovrai escogitare qualche trucco per mantenere la variabile (un campo hidden in un frame nascosto?).

    Statemi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  6. #6
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Beh allora sempre un "popup" è nella mia visione :)

    Insomma parliamo di window.open, apre nuove finestre via script. Poi che se le dimensioni di questa sono ridotte vogliamo chiamarlo popup o popuppino.. o se le dimensioni sono più ampie vogliamo chiamarla finestra questo è un altro conto

    Comunque "tecnicamente" sempre una finestra popup è, quindi se vedo "no popup" penso a finestre NON aperte con window.open.
    _______

    Riguardo al discorso di dementialsite (che è correttissimo) potrei anche ricordare -senza affaticarsi troppo a mantenere la variabile handle di finestra- di sfruttare il nome "target" per chiuderle, per es. effettuando un secondo window.open("closeme.html", "target") appunto con una pagina contenente un solo script di self.close(). Ma dipende anche dalla situazione e contesto che non sappiamo.
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  7. #7
    L'avatar di NoWhere
    NoWhere non è connesso Moderatore
    Data registrazione
    14-02-2003
    Residenza
    New Balarm
    Messaggi
    4,118

    Predefinito

    Citazione Originalmente inviato da heracleum
    Beh allora sempre un "popup" è nella mia visione :)

    Insomma parliamo di window.open, apre nuove finestre via script. Poi che se le dimensioni di questa sono ridotte vogliamo chiamarlo popup o popuppino.. o se le dimensioni sono più ampie vogliamo chiamarla finestra questo è un altro conto

    Comunque "tecnicamente" sempre una finestra popup è, quindi se vedo "no popup" penso a finestre NON aperte con window.open.
    _______

    Riguardo al discorso di dementialsite (che è correttissimo) potrei anche ricordare -senza affaticarsi troppo a mantenere la variabile handle di finestra- di sfruttare il nome "target" per chiuderle, per es. effettuando un secondo window.open("closeme.html", "target") appunto con una pagina contenente un solo script di self.close(). Ma dipende anche dalla situazione e contesto che non sappiamo.
    no. forse ho proprio spegato malissimo il mio pensiero.
    NON é UN POPUP!! non é un popup grande 1024x746 é una nuova finestra. c'é differenza!! é UN LINK CHE VIENE APERTO IN UN TARGET="_BLACK"

  8. #8
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Ecco, basta specificarlo nel primo post e si riduce la confusione.

    Dunque stiamo parlando di una finestra aperta seguendo un link con target="_blank" (attenzione _blank non _black, ma suppongo sia stato un "typo").
    Quindi anche se non è stato un javascript (window.open) ad aprirla di solito i browser comuni (ie, mozilla) la considerano comunque una finestra "non dell'utente" quindi la lasciano comunque chiudere senza errori o conferme.

    Perciò riassumendo la situazione hai una finestra che ha aperto l'utente, con dentro caricata una pagina "A", che ha un link tipo:
    <a href="B.html" target="_blank">Nuova finestra</a>

    cliccandolo si apre la pagina "B" in una nuova finestra "_blank" creata dal browser, che contiene un link tipo:
    <a href="javascript:self.close()">Uccidimi</a>

    Cliccando il link "Uccidimi" la finestra viene chiusa senza problemi.

    E' la stessa cosa di una popup window (aperta da window.open), identico script per chiuderla.
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  9. #9
    L'avatar di NoWhere
    NoWhere non è connesso Moderatore
    Data registrazione
    14-02-2003
    Residenza
    New Balarm
    Messaggi
    4,118

    Predefinito

    Citazione Originalmente inviato da heracleum
    Ecco, basta specificarlo nel primo post e si riduce la confusione.
    Citazione Originalmente inviato da NoWhere dal primo post di questo 3d
    però a me serve un codice che faccia chiudere la finestra del browser [per intenderci non un popup, ma proprio la finestra, scheda di ff, ecc...]
    credevo di aver esplicitato il discorso qui, ma poi accorgendom i che forse ero stato poco chiaro ho esplicitato di nuovo sperando che stavolta il messaggio arrivasse chiaro all'altra persona!!


    Citazione Originalmente inviato da heracleum
    Dunque stiamo parlando di una finestra aperta seguendo un link con target="_blank" (attenzione _blank non _black, ma suppongo sia stato un "typo").
    Quindi anche se non è stato un javascript (window.open) ad aprirla di solito i browser comuni (ie, mozilla) la considerano comunque una finestra "non dell'utente" quindi la lasciano comunque chiudere senza errori o conferme.

    Perciò riassumendo la situazione hai una finestra che ha aperto l'utente, con dentro caricata una pagina "A", che ha un link tipo:
    <a href="B.html" target="_blank">Nuova finestra</a>

    cliccandolo si apre la pagina "B" in una nuova finestra "_blank" creata dal browser, che contiene un link tipo:
    <a href="javascript:self.close()">Uccidimi</a>

    Cliccando il link "Uccidimi" la finestra viene chiusa senza problemi.

    E' la stessa cosa di una popup window (aperta da window.open), identico script per chiuderla.
    si, ecco, però non uccide la seconda finestra. non fa nulla [ff e ie provato]
    in parole semplici, non funziona quanto detto da te perchè ho provato codesto codice prima di aprire il questo 3d di aiuto!! [nel mio primo post ho scritto che ho provato 2 codici che non funzionavano, uno di questi é questo, l'altro é sempre questo, ma richiamato in un bottone-form]

  10. #10
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Se ti posto delle righe di codice e non uso forme condizionali (potrebbe.., forse.., prova un po'..) vuol dire che ho già sperimentato la cosa praticamente sui browser detti (ie, mozilla) e ti posso confermare che funziona, cioè viene permesso il self.close() di una finestra aperta con link e target="_blank".

    Quindi evidentemente hai una situazione -magari leggermente- diversa,
    se potessi darci il link della "pagina A" online (quella che apre la pagina _blank) potremmo sicuramente verificare meglio...
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  11. #11
    L'avatar di NoWhere
    NoWhere non è connesso Moderatore
    Data registrazione
    14-02-2003
    Residenza
    New Balarm
    Messaggi
    4,118

    Predefinito

    'azz, si, ci ho pensato che dipende allora da qualche codice o altro dalla partenza [pagina A]
    ora sto uscendo, ma domani posto il link interessato, anzi incrimimnato e vediamo se insieme troviamo la causa bastarda che non fa funzionare quell'innocente di uccidipagina!! [lol!!]
    thanx!! ; )

    EDIT:
    é assurdo!! il locale non mi funziona neanche a pagarlo in diamanti ma se lo uppo funziona!! porcal'oca, ma perchè mai??!
    ..boh, cmq sia, grazie hera per l'aiuto!!
    se ti interessa provare in locale tu il link é qui [anche se non lo terrò per molto] http://faber882.altervista.org/test/A.html
    Ultima modifica di NoWhere : 31-01-2006 alle ore 19.14.40

Regole di scrittura

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