Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Javascript & focus su finestre aperte

    In una pagina ho una serie di link che aprono finestre per visualizzare pagine .html o .pdf.

    una volta cliccato su un link viene aperta una nuova finestra.
    Se tale finestra viene lasciata aperta e l'utente ritorna alla finestra con i link vorrei fare in modo che, nel caso cliccasse sul link precedente (la cui finestra è già aperta), il focus andasse sulla finestra già aperta...

    di default se una finestra è già aperta e si clicca sul relativo link il focus non viene spostato, e la sensazione è quella che il link sembra non funzionare...

    spero di essere stato abbastanza chiaro...

    grazie a tutti!!!
    Enrico.

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Aggiungi il focus ogni volta che apri la finestra. Se lo ha gia` non fa male, se non lo ha viene portata in primo piano:

    var win1 = window.open(...)
    win1.focus();
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    oK,
    purtroppo mi trovo comunque in difficoltà,
    come posso inserire le istruzioni JS per il focus?

    il link viene creato in asp nel seguente modo:

    codice:
    Response.Write("
    
    <LI>"+OBJrs("Titolo")+"</LI><font size='-1'></font>");

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    ASP non e` il mio forte. Trasformo nel codice HTML trasferito al browser (interpretando le variabili passate):
    codice:
    Titolo
    Questo deve diventare:
    codice:
    Titolo
    Nella pagina (in uno script della head) ci deve poi stare:
    codice:
    function apri(url) {
      var win1 = window.open(url, 'nomefinestra');
      win1.focus();
      return false;
    }
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    così funziona,
    c'è solo un problema: quando clicco la seconda volta sul link apre una seconda finestra... dovrei controllare se la finestra è già aperta !
    spero di trovare il modo !!!
    Enrico.

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Se il nome della finestra rimane lo stesso (secondo parametro di window.open() ) la finestra viene riaperta sulla precedente.

    Se non capisci posta il programma come e` stato modificato.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  7. #7
    penso di aver capito, però non ho ancora concluso

    la funzione l'ho scritta così:

    function apri(url,titolo) {
    var win1
    win1 = window.open(url, titolo);
    win1.focus();
    return false;
    }

    in quanto l'istruzione che genera il link è in un ciclo asp e quindi devo passare ogni volta un nome diverso per la finestra:

    codice:
    Response.Write("
    
    <LI>"+OBJrs("Titolo")+"</LI><font size='-1'></font>");
    però c'è qualcosa di errato, al secondo click non mi setta il focus sulla finestra aperta...

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Non ci siamo capiti.

    Il tuo script e` corretto, ma cambiando il secondo parametro, viene aperta una nuova finestra.

    Invece avevo capito che volevi che la seconda pagina andasse nella stessa popup.

    Per cui non dovresti usare il parametro titolo passato, ma sempre lo stesso:

    function apri(url,titolo) {
    var win1 = window.open(url, 'popup');
    win1.focus();
    return false;
    }

    Eventualmente prova anche cosi` con la variabile win1 globale (anziche` locale alla funzione):

    var win1;
    function apri(url,titolo) {
    win1 = window.open(url, 'popup');
    win1.focus();
    return false;
    }
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  9. #9
    con la variabile della finestra globale funziona, solo per i link che aprono finestre che visualizzano file.htm.

    Se le finestre aperte visualizzano file.pdf non funzionano :-(

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    I file pdf sono gestiti da Acrobat reader.
    Tale applicativo, in qualche caso, puo` essere aperto all'interno di una finestra del browser, ma la gestione dell'applciativo e` comunque del SO, mai del browser.

    Non credo si possa trovare soluzione tramite programmi standard.
    Magari qualche VBS o ActionScript o Jscript (tutti solo per IE) possono risolvere, ma io non sono competente in materia.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.