Ciao a tutti!
Esiste una funzione in JS per sapere se la pagina che stiamo visualizzando con il browser è quella?
Qualcosa con focus?
Grazie. :wink:
Printable View
Ciao a tutti!
Esiste una funzione in JS per sapere se la pagina che stiamo visualizzando con il browser è quella?
Qualcosa con focus?
Grazie. :wink:
veramente per rilevare una pagina(un indirizzo) in js il codice è :
Codice HTML:
<script type="text/javascript">
var uri = document.location.href;//x rilevare la pagina corrente
var uri_top = top.document.location.href;//x rilevare se la pagina è in un frame o iframe
//se la pagina ha come nome esempio canvas.php ed è in un iframe, ma non si vuole che venga aperta in una nuova finestra:
if (uri_top.search('canvas.php')!='-1') window.location='not_found.php';
</script>
window.location o document.location è circa la stessa cosa...
@radiodelmomento: forse ho capito cosa chiedi: prova con window.onfocus e window.onblur (anche se non le ho mai usate, dovrebbero funzionare).
Ciao!
Alemoppo hai capito :=D:
Ma in quel modo io posso sapere quando la pagina diventa attiva, ma non posso sapere se continua ad essere attiva... sbaglio?
Tnx :wink:
Quando si verifica onFocus inizia ad essere attiva.
Termina di essere attiva all'onBlur.
(il tutto teoricamente, perché non le ho mai utilizzate).
Ciao!
Ho provato, ma partono entrambi appena vengono letti e poi non funzionano più...
Comunque, è corretta la sintassi di questo codice?
Ho provato sia in <head> che in <body>...Codice HTML:<script>
window.onfocus = alert('focus');
window.onblur = alert('blur');
</script>
Grazie. :=D:
prova:
Attenzione: se provi con gli alert, all'inizio apparirà quello del focus (perché stai appunto visualizzando la pagina). Però, quando appare l'alert non hai più il focus della pagina, quindi appare anche quello del blur. Premendo ok ritorna il focus alla pagina e riappare un'altro alert... va così all'infinito.Codice HTML:<!doctype html>
<html>
<head><title>prova</title>
</head>
<body><script>
window.onfocus = function() { document.getElementById('stato').innerHTML += 'focus<br>';}
window.onblur = function() { document.getElementById('stato').innerHTML += 'blur<br>';}
</script>
<div id="stato"></div>
</body>
</html>
Per testare lo script sopra, potresti ad esempio switchare tra le schede del browser: quando vai su un'altra, appare la scritta onBlur. Quando torni, appare quella del focus.
Ciao!
Grazie, funziona (ovviamente). :=D:
Se vuoi avere un'informazione più precisa puoi usare le API di visibilità della pagina, che a differenza di questo metodo includono anche il caso in cui la tua pagina non abbia il focus ma sia comunque visibile sullo schermo (è selezionata un'altra finestra, per esempio).
Grazie ma è importante che funzioni su tutti i browser. :=D: