Newsgroup: it.comp.lang.javascript
Titolo: Help su window.focus() e IE5

Salve a tutti; sono ancora alle prime armi, percio' scusate se la domanda
puo' sembrarvi banale.
In una finestra A metto un link che fa aprire una nuova finestra B.
Ma se poi B viene ridotta ad icona o passa in secondo piano, quando
clicco di nuovo sul link in A mi piacerebbe che la finestra B tornasse
in primo piano. E per fare questo ho cercato di usare window con focus
Ma qui sorgono i problemi.
Con Netscape ci riesco, con IE5.0 no!
Con Netscape utilizzo windowB.focus(), ma quando cerco di farlo con
explorer, mi risponde "impossibile trovare membro". Ho provato anche con
window.focus, ma non funziona. L'unico sistema che sono riuscito ad
escogitare consiste nel chiudere la finestra e poi riaprirla. Ma cosi'
ricomincerei dal link iniziale e non dalla posizione in cui era.
Sbaglio qualcosa? Non credo, perche' anche in alcuni siti ho notato un
comportamento simile; che sia proprio una caratteristica di IE ignorare
il focus sulla finestra?
Con Netscape pero' c'e ' un altro piccolo problema:
nonostante abbia impostato la finestra con le scrollbar, se il contenuto
eccede
le dimensioni della finestra che apre, lui continua puntualmente a non
inserirmi
le scrollbar.
E' anche veroche non si puo' avere tutto dalla vita.......
Credo che la parte piu' difficile non sara' imparare bene Javascript e HTML;
ma riuscire a risolvere i problemi di compatibilita' tra i vari brower.
Grazie a tutti,  Topper

 le scrollbar.
Se non ho capito male è questo che vorresti fare( la scroolbar in NN4.7
viene inserita):
<SCRIPT LANGUAGE="JAVASCRIPT">
<!--
function apri(){
window.open('nuova.htm','Nuova','toolbar=no,width=650,height=500,directories
=no,status=no,menubar=no,scrollbars=yes,resizable=yes');
window.blur();
}
//-->
</SCRIPT>
<p><a href="javascript:apri();">Apri</a></p
In IE 5 però rimane iconizzata se tale
Corretto???
_____________________
andreotta fabiano
WebMªster ATI POWER s.n.c.
andr...@atipower.it
http://www.atipower.it
http://www.afdsoftware.freeweb.org
_____________________

 Corretto???
Innanzitutto grazie per la risposta.
Piu' o meno si, e' quello che ho cercato di fare;
pero' blur toglierebbe il focus dalla finestra corrente, ma non garantirebbe
di tornare sulla
finestraB; andrebbe sull'ultima in cui ero prima di tornare nella finestraA
e clicclare sul link
per aprire B. Il codice che avevo scritto inizialmente e'
<SCRIPT LANGUAGE="javascript">
.....
        function BrowseCD()
          if (!window.ExploreCD)        // 1 volta non e' definito cosi' e'
obbligato ad aprirla
          {
             ExploreCD= window.open('../', 'esplora', 'top=0, left=0,
width=600, height=350,
               status=1, toolbar=1, directories=1, menubar=1, location=1,
scrollbars=1, resizable=1');
          }
          else
         {
             if (!ExploreCD.closed)
               {
                   ExploreCD.focus();
                }
             else
                {
                   ExploreCD= window.open('../', 'esplora', 'top=0, left=0,
width=600, height=350,
                     status=1, toolbar=1, directories=1, menubar=1,
location=1, scrollbars=1, resizable=1');
                }
         }
       }
</SCRIPT>
...........
<A HREF="../"  TARGET="esplora" onclick="BrowseCD(); return false;">
..........
Ma visto che e' proprio una "caretteristica" di IE, non vedo perche' dovrei
preoccuparmi piu' di tanto.
Per quanto riguarda le barre della nuova finestra invece, a me non appaiono,
ma non so se dipende dal
fatto che gli faccia esporare il CD cosi' o se dipende dalla mia versione di
NN che e' la 4.51.
Quello che volevo era realizzare un'interfaccia HTML per esplorare un CD
contenente documenti,
e dare la possibilita' nella pagina iniziale di scegliere tra iniziare con
l'interfaccia o decidere di
farsi aprire una finestra sulla root del CD ed esplorarlo da li, un po come
con gestione risorse.
Con IE non c'e' nessun problema, a parte il fatto trascurabile del focus, ma
con NN, come ti
avevo detto,  non mi fa comparire le barri per cui se entro in una directory
il cui contnuto
eccede le dimensioni della finestra, sono fregato.
Provero' ad installare NN4.7
Ciao


Nel testo qui sopra sopra manca una graffa subito dopo
function BrowseCD()
{
if eccetera
Se c'era nel tuo script controlla 
di non aver inserito delle andate a capo nelle istruzioni di apertura
finestra window.open(tutto su una riga nel senso di non dare mai
invio,all' interno della parentesi) 
se ci sono eliminale
cosi' formattata a me la tua funzione lavora bene nn e IE
dando il focus come previsto (provato su C naturalmente)
se la graffa c'era e le istruzioni erano gia' su una riga
ultima risorsa con IE che ho provato in problemi similari in cui non
c'era santo di riportare in primo piano IE:
prova a mettere nell' istruzione
dove poni il controllo
if (!ExploreCD.closed)
               {
                   ExploreCD.focus();
                }
un brevissimo timeout cosě
if (!ExploreCD.closed)
               {
                   setTimeout('ExploreCD.focus()',40)
                }
40 sono millisecondi,  una misura empirica potevo dire 30 come 200 se
ancora non funziona ...
aspetta qualche altra idea...
dimmi se hai risolto per favore

Confermo la risposta di  p.carena,
A parte la graffa mancante è tutto ok sia con IE 5.5 che NN4.7 che con NN6 a
parte l'impossibilità di iconizzare la nuova finestra con quest'ultimo .
Ciao!


 dimmi se hai risolto per favore
Un mio professore diceva sempre che la macchina non deve riuscire a vincere.
Io gli ho sempre risposto che certe volte mi accontento anche di pareggiare,
8-P
Credo che allora sia un problema legato alla mia macchina od alle mie
versioni.
Dovrei avere un po' tempo in questi giorni, e caso mai provero' ad
aggiornare i due browser.
Grazie ancora, Topper.
(Grazie anche a Fabiano)

 ha scritto nel messaggio
news:8mj6tf$g1h$1...@worldonline.it...



Purtroppo no, provato a lavorare su A:
vedo i tuoi stessi messaggi.
Non so che dire 



Credo siano coinvolte forse altre valutazioni, non escluse di
sicurezza, o semplicemente di accesso ai file: se prima di provare a
dargli il focus  semplicemente gli chiedo il nome di ExploreCD.name
con un alert aspettandomi un "esplora" (faccio riferimento allo script
originario per chi si fosse perso il thread)
IE mi dice accesso negato
Ho provato allora far  aprire un frameset dalla tua funzione.
un frame potrebbe essere anche invisibile o di dimensioni minime,
nell' altro faccio caricare una pagina preesistente il cui unico
comando presente è uno script
<script>
self.location.href=""..\\"
</script> 
che mi rende visibile la directory nel frame inferiore
Se torno sulla pagina originaria, e riclicco sul link che comanda la
tua funzione,  il frameset accetta di tornare in primo piano senza
problemi anche con IE
Unica cosa, se clicco su qualunque file elencato nel listing mi viene
aperto in una TERZA finestra da IE, e nello stesso frame da NN
Qualcuno ha idee sul perchè del comportamento di IE?

</script> 
leggi
<script>
self.location.href=".\\"
</script>
un puntino 

 ha scritto nel messaggio
news:398fe60c...@news.iunet.it...
