2010-09-17 10 views
10

Vorrei creare una pagina web con browser specifico in javascript.E 'possibile aggiungere un codice browser in javascript

Ad esempio:

posso utilizzare il codice come questo nel mio parte codifica

chrome.tab.onRemoved.addListener() nella mia pagina web.

Se è possibile, per favore suggeriscimi.

+0

Si può dire che cosa esattamente stai cercando di acheive? – Nivas

+0

Ho bisogno di catturare la chiusura della scheda o l'evento di chiusura del browser, per chiedere il feedback del cliente prima di chiudere. –

+0

Vedere la mia risposta qui sotto. – Nivas

risposta

11

Che cosa state cercando di ottenere?

Se si desidera sapere quando la scheda in cui è caricata la pagina Web è chiusa, quindi window.onunload dovrebbe aiutare.

Se si desidera sapere quando un'altra pagina Web è chiusa, non è possibile farlo.

UPDATE:
Hai detto che vuoi sapere quando l'utente chiude il browser o scheda. Non è possibile.

Ma per il tuo scopo (ottenere un feedback), penso che tutto ciò che serve sia distinguere se l'utente sta navigando verso un link nella tua pagina, o se l'utente sta digitando un altro URL (o facendo clic su un preferito).

Penso che per il tuo requisito, se l'utente chiude il browser o se digita un altro URL, è lo stesso: l'utente sta navigando lontano dal tuo sito e in quel momento dici di voler raccogliere un feedback.

Questo può essere fatto in javascript.

Per tutti i click nella pagina che potrebbe portare ad una pagina di aggiornamento (collegamenti ipertestuali, pulsanti, ...), impostare un flag.
In window.onunload, verificare se questo flag è impostato.
- Se è impostato, quindi l'utente ha fatto clic su un collegamento nella pagina , non fare nulla.
- Se la bandiera non è impostare quindi l'utente sta navigando, tempo per raccogliere feedback.

Fammi sapere se questo funzionerebbe.

PS: Si noti che i popup/eventuali distrazioni durante window.unload possono essere molto fastidiosi. Capisco che probabilmente sono i requisiti che ti sono stati dati. Ma se possibile, prova altri meccanismi per raccogliere feedback (volontari) dall'utente.

+0

Ho solo bisogno di sapere se l'utente sta chiudendo la pagina o semplicemente navigando. In window.onunload e window.onbeforeunload, gli eventi si attivano per tutta la navigazione e chiudono anche l'evento. Ho particolarmente bisogno di trovare il browser o l'evento di chiusura della finestra. –

+0

Non penso che sia possibile vedere se l'utente sta chiudendo la finestra o no. Ma per il tuo scopo, penso sia sufficiente vedere se l'utente sta navigando tramite qualche link nella tua pagina, o se l'utente ha digitato un altro URL (o fatto clic su un segnalibro) per navigare lontano dalla tua pagina. Ho aggiornato la risposta con una possibile soluzione. – Nivas

+0

Questo doveva essere un feedback "volontario", btw. – Nivas

2

No, non è possibile accedere alle API specifiche dell'estensione dalle pagine Web.

2

L'oggetto Navigator contiene tutte le informazioni sul browser del visitatore.

https://developer.mozilla.org/en-US/docs/Web/API/Window.navigator

penso che questo sia più o meno la misura di ciò che è possibile in termini di interazione con il browser specifica. Non è possibile accedere ad altre schede (per motivi di sicurezza) o dire quando una scheda è chiusa.

1

È possibile utilizzare utilizzare l'evento onbeforeunload:

<html> 
    <head> 
    <script> 

    var exit = 1; 

    function handleClose() 
    {  
     if (exit) 
     { 
      alert("Closing"); 
     } 
    } 

    </script> 
    </head> 
    <body onbeforeunload="handleClose()"> 
    <a href="test.html" onclick="exit=0">Navigate to other page</a> 
    </body> 
</html> 
+0

Questo è per la scheda in cui è in esecuzione lo script, non ti dice se un'altra scheda è chiusa ... –

+1

Non puoi scoprire se alcune altre schede sono chiuse, non è rilevante per il tuo sito. Non puoi farlo perché sarà una violazione della sicurezza del browser. –

Problemi correlati