Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

How do I detect a user leaving the site?

0 views
Skip to first unread message

Andy

unread,
Apr 28, 2008, 11:25:02 AM4/28/08
to
As per the question really.

Not trying to stop them leaving, but just detect WHEN they leave the site

Cowboy (Gregory A. Beamer)

unread,
Apr 28, 2008, 11:49:57 AM4/28/08
to
You can set up JavaScript on a page, but you will have to make it elaborate
enough to distinguish page unload from page unload to another site. This is
how sites that try to get you to download trojans work, popping up a modal
popup when the user leaves a page, except they do it on any unload.

Storing that they have left will require an AJAX like solution, as you will
have to have the JavaScript contact the server.

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

Subscribe to my blog
http://gregorybeamer.spaces.live.com/lists/feed.rss

or just read it:
http://gregorybeamer.spaces.live.com/

*************************************************
| Think outside the box!
|
*************************************************
"Andy" <An...@discussions.microsoft.com> wrote in message
news:ACD6882F-B1B0-4D59...@microsoft.com...

George Ter-Saakov

unread,
Apr 28, 2008, 11:50:07 AM4/28/08
to
Due to disconnected nature of the Web applications it's a bit hard (and
always not reliable).

First you need to define for yourself "exit time".
Then you need to define precision. For example "We need 1 hour timeframe".
Meaning that if user left 8:50 and we detected it by 9:00 then we fine... .
-------------------------------------------------
Here are some thing you can test if they going to work for you.

1. You can get last time user has requested anything from your site. And
call it your "exit time". Basically update exit time everytime user had send
a request to aspx. At the end when user closes the browser you will have
last "exit time".

Problem: if user requested page "article.aspx" and then sitting there
reading it for 30 minutes and then closes browser you will have exit time 30
minutes before user actually closed the browser...

But this comes does to definition of what is "exit time".

2. To reduce lag time specified in #1 you can have a JavaScript that would
refresh a tiny image on your page every minute. then if user looked at your
page for 30 minutes you will have exit time within one minute range...

But this comes down to the precision... And obviously will have a problem if
JavaScript is disabled.

Check out this on how to do that with an image...
http://www.codeproject.com/KB/aspnet/SessionForever.aspx


----------------------------------------------------

George.


"Andy" <An...@discussions.microsoft.com> wrote in message
news:ACD6882F-B1B0-4D59...@microsoft.com...

bruce barker

unread,
Apr 28, 2008, 11:54:02 AM4/28/08
to
there is no surefire way. the most common is a lightweight ajax call on page
unload (which will fire on every page referesh), then run a timer on the
server to detect that the user did not return to the site. you can also use a
session timeout for this (20 minutes of no site hits).

-- bruce (sqlwork.com)

Mark Rae [MVP]

unread,
Apr 28, 2008, 12:10:29 PM4/28/08
to
"Andy" <An...@discussions.microsoft.com> wrote in message
news:ACD6882F-B1B0-4D59...@microsoft.com...

> Not trying to stop them leaving, but just detect WHEN they leave the site

As per the other replies, there is no 100% reliable way of doing this...


--
Mark Rae
ASP.NET MVP
http://www.markrae.net

Cowboy (Gregory A. Beamer)

unread,
Apr 28, 2008, 2:27:16 PM4/28/08
to
Client side JavaScript is the most surefire, but one can easily circumvent
it by killing the browser. LOL ;-)

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

*************************************************
| Think outside the box!
|
*************************************************

"Mark Rae [MVP]" <ma...@markNOSPAMrae.net> wrote in message
news:%23NKHipU...@TK2MSFTNGP05.phx.gbl...

0 new messages