9
  • Nous devons suivre le temps efficace sur le site de nos utilisateurs
  • La plupart des utilisateurs, quand ils ont terminé, laissez l'onglet ouvert et passer à un autre onglet
  • temps sur place, il est extrêmement inexact

Y at-il un événement Javascript pour suivre la "perte de focus" de l'onglet actuel?Y at-il un moyen de suivre l'accent sur l'onglet avec Javascript?

+0

hmm, je pensais que l'événement de flou se déclencherait lorsque l'utilisateur mettrait l'accent sur un autre onglet? ce qui bien sûr ne se déclenche que si la fenêtre a eu le focus physique pour commencer. – scunliffe

+0

Question intéressante. Je * pense * que la réponse est "non" cependant. Vous pouvez ajouter un gestionnaire "mouseout" au "" ou quelque chose, et suivre quand la souris quitte la fenêtre (ce qui sera le cas quand la souris est déplacée pour sélectionner un autre onglet), mais vous ne savez pas vraiment si c'est ce qui se passe se passer. – Pointy

+0

@scunliffe Je ne vois aucun événement "flou" de "" dans Chrome au moins. Je vois "mouseout". – Pointy

Répondre

11

Cela devrait fonctionner à la fois sur le commutateur onglet et sur la fenêtre du navigateur perdre le focus:

function onBlur() { 
    document.body.className = 'blurred'; 
}; 
function onFocus(){ 
    document.body.className = 'focused'; 
}; 

if (/*@[email protected]*/false) { // check for Internet Explorer 
    document.onfocusin = onFocus; 
    document.onfocusout = onBlur; 
} else { 
    window.onfocus = onFocus; 
    window.onblur = onBlur; 
} 
+0

Merci! Je vais essayer ça dès que possible et vous le faire savoir. –

+0

Si cela fonctionne réellement, c'est un morceau de code cool, lashtal! –

+0

Cela a-t-il fonctionné? Je me suis demandé à ce sujet moi-même. Si vous deviez apporter des modifications, j'aimerais voir votre solution complète. Merci! –

1

je ferais quelque chose avec mousemove et scroll et compter un visiteur aussi actif aussi longtemps que l'un de ces déclenchement dans un certain intervalle. Cela les couvrira aussi en laissant le navigateur ouvert et en laissant l'ordinateur.

1

De quel onglet dont vous parlez? Est-ce votre onglet Nav/menu ou l'onglet Browser. Je sens, vous voulez dire l'onglet du navigateur! Je pense que ce n'est pas possible avec précision. Mais que faire si vous suivez quelques événements tels que mousemove, focus etc. puis déclenchez un événement similaire à celui de certaines données (compteur) sur le serveur. Lorsque l'utilisateur est sur votre page, il va faire quelque chose comme déplacer la souris, cliquer quelque part etc. Donc, la différence dans le chargement de la première page et le dernier événement peut indiquer la statistique d'utilisation.