Autore Topic: javascript window.focus()  (Letto 2708 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline Piviul

  • Post: 82
javascript window.focus()
« il: 19 Dicembre 2005 16:44:30 »
Non è possibile riuscire a portare in primo piano una finestra di firefox da javascript? Io ho sempre utilizzato la funzione focus() ma in FF non fa nulla, pur non dando errore. In altre parole da codice javascript mi aspettereri che scrivendo
Codice: [Seleziona]
function focusWindow(wnd){

if (wnd.focus)
wnd.focus();
return;
}
venga dato il fuoco alla finestra wnd. Forse è una feature del jscript di MS? C'è un modo in FF di ottenere una cosa simile?

Grazie mille

Piviul
« Ultima modifica: 19 Dicembre 2005 16:47:48 da Piviul »

Offline lucasali

  • Moderatore
  • Post: 7493
Re: javascript window.focus()
« Risposta #1 il: 19 Dicembre 2005 16:49:56 »
sposto in evangellizzazione in quanto mi sembra il posto più adatto ;)

ciao. Luca

Offline flod

  • Amministratore
  • Post: 15057
    • http://www.flod.org
Re: javascript window.focus()
« Risposta #2 il: 19 Dicembre 2005 18:06:50 »
Nelle opzioni JavaScript->Avanzate è tutto abilitato? La console JavaScript segnala qualche errore?

Per il poco che conosco credo che window.focus sia supportato da Firefox :?
« Ultima modifica: 19 Dicembre 2005 18:33:46 da flod »

Offline mas_160

  • Post: 76
Re: javascript window.focus()
« Risposta #3 il: 19 Dicembre 2005 18:09:07 »
Il tuo esempio a me funziona correttamente.
Hai verificato che in Opzioni->Contenuti sia abilitato Javascript? (domanda sciocca, ma a volte... :))

Offline Piviul

  • Post: 82
Re: javascript window.focus()
« Risposta #4 il: 20 Dicembre 2005 15:34:36 »
Nelle opzioni JavaScript->Avanzate è tutto abilitato? La console JavaScript segnala qualche errore?
Certo, è la prima cosa che ho guardato; nella consol non compare nulla e per di più
Codice: [Seleziona]
window.focus?true:false; restituisce true!
Per il poco che conosco credo che window.focus sia supportato da Firefox :?
Come dicevo effettivamente window.focus dovrebbe essere supportato in FF (dal momento che restituisce true) e sicuramente è supportato obj.focus sui vari obj quali controlli input, combo ecc...

Se però applico focus ad un oggetto window mi aspetto che porti window in primo piano mentre invece non ci pensa proprio.

Il tuo esempio a me funziona correttamente.
In che senso funziona? ti porta wnd in primo piano?

prova ad esempio questo codice:
Codice: [Seleziona]
<html>
<head>
<script type="text/javascript">
<!--
function openAnchor(strURL, strTarget, width, height){
var bNewWnd=true;
if (strTarget && eval('self.'+strTarget) && eval('self.'+strTarget).name){

if (eval('self.'+strTarget).focus){
eval('self.'+strTarget).focus();
bNewWnd=false;
}
else
eval('self.'+strTarget).close();
}

if (bNewWnd){
wnd=self.open(strURL,
strTarget,
'toolbar=no,location=no,directories=no,scrollbars=yes,resizable=yes,menubar=yes,'+
(width!=null?'width='+width:'')+(height!=null?'height='+height:'')
);
if (strTarget!=null)
eval('self.'+strTarget+'=wnd');
}
return;
}
-->
</script>
</head>
<body>
<h1>Prova popup</h1>
<p><a href='javascript:openAnchor("","nomeWnd","500","500");'>cliccami</a></p>
</body>
</html>
Se provi in IE nomeWnd viene aperta la prima volta e le volte successive passa soltanto in primo piano; in FF invece non diventa in primo piano. Come mai?

Grazie mille

Piviul

Offline lucasali

  • Moderatore
  • Post: 7493
Re: javascript window.focus()
« Risposta #5 il: 20 Dicembre 2005 15:41:02 »
confermo quanto già detto dagli altri, anche a me funziona...
ho appena provato il tuo codice:
la prima volta si apre la finestra, le volte successive la porta in primo piano.

hai provato con un nuovo profilo?
hai provato in SafeMode?

ciao. Luca

Offline Piviul

  • Post: 82
Re: javascript window.focus()
« Risposta #6 il: 21 Dicembre 2005 08:55:45 »
confermo quanto già detto dagli altri, anche a me funziona...
...ooops hai ragione! o almeno, veramente ho ragione anch'io... nel senso che su FF 1.04 per linux non va ma ho provato ora sua una macchina con FF 1.5 per winzoz e funziona. Bene, grazie a tutti quanti comunque.

Un altro punto in favore di FF

Piviul

Offline mas_160

  • Post: 76
Re: javascript window.focus()
« Risposta #7 il: 22 Dicembre 2005 13:16:59 »
Il tuo esempio a me funziona correttamente.
In che senso funziona? ti porta wnd in primo piano?

Esattamente.

prova ad esempio questo codice:
Codice: [Seleziona]
   [..snip..]
Se provi in IE nomeWnd viene aperta la prima volta e le volte successive passa soltanto in primo piano; in FF invece non diventa in primo piano. Come mai?

Anche questo esempio a me (Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8) Gecko/20051111 Firefox/1.5, ossia FF 1.5 su XP professional SP2) funziona come dovrebbe.

0 Utenti e 1 Visitatore stanno visualizzando questo topic.