Thanks for the thoughtful suggestions...

@djmangus - I already have this working synchronously, but I'm trying to do
a/b testing on things like pricing and conversion rates, and the extra delay
does affect abandonment rates, especially over slow/dialup connections.


Jeff C - I've looked at google analytics,which did add support for true
async tracking.
GA seems too heavy-weight for what I want to do, at least in the sense that
there's a significant learning curve.

more specifically, what I tried doing was this, in the tracking function

function track (tolink,xparams)
{
new Ajax.Request (
serverurl,
{
method: 'get',
parameters:  xparms,
onLoaded: function(ok) { location.href = tolink;   }
}
);
}

The above triggers the actual navigation in the completion callback.
If I use onLoaded, it behaves synchronously and will wait for the server to
reply.
If I use onLoading, the data doesn't get sent at all..

>From the docs, I'd expect onLoaded to do the trick as it gets called
onLoaded (maps on Request sent)

What I need is something like this, which will trigger the navigation after
the data is sent but not wait for the server to respond...

thanks




On Tue, Feb 16, 2010 at 6:47 AM, Jeff C <car...@gmail.com> wrote:

> @DJ Mangus: That would have been my simple solution too. Capture the
> click event, do my ajax mojo, and then forward them. But like you
> mentioned, it will most likely affect the user experience.
>
> @manfmnantucket: Have you ever thought about using google analytics?
> It offers the generic visitor info (how many visits, from where,
> keywords, etc). But they also have event tracking[1][2]. Once the page
> is loaded you can track simple events. For example, when a user stars
> and stops a flash movie. I use it to track when someone rates a
> picture in my photo gallery, track what icons are clicked on my google
> maps, and track all the clicks on outgoing links from my site. It has
> been very useful so far.
>
> Just a thought.
>
> [1]
> http://code.google.com/apis/analytics/docs/tracking/eventTrackerGuide.html
> [2]
> http://code.google.com/apis/analytics/docs/tracking/eventTrackerWrappers.html
>
> - J e f f  C o n k l i n -
> - AOL IM - a14piece
> - http://www.getoutsidenj.com
> - http://www.carabs.com
>
> - J e f f  C o n k l i n -
> - AOL IM - a14piece
> - http://www.getoutsidenj.com
> - http://www.carabs.com
>
>
>
> On Tue, Feb 16, 2010 at 3:27 AM, DJ Mangus <d.man...@gmail.com> wrote:
> > Don't see why not though it'd slow down the user experience a bit (not
> > necessarily a good thing).
> >
> > Have the onclick block, send data to server, server responds, then in
> > the Ajax callback send user to the destination via window.location
> >
> > Note: I haven't done this, it's just an off the top of my head
> > suggestion.
> >
> > Sent from my phone so please pardon any spelling errors.
> >
> > On Feb 15, 2010, at 8:28 PM, manfmnantucket <manfmnantuc...@gmail.com>
> > wrote:
> >
> >> Hi all,
> >>
> >> I'm trying to use Prototype to do asynchronous click-tracking... that
> >> is, to
> >> log a server record each time a user clicks a link to navigate to
> >> another page.
> >>
> >> I've set the link onclick up to call a simple function which makes an
> >> Ajax.Request to send the data
> >> without blocking.
> >>
> >> However usually the server never gets the data, I think because the
> >> current page Unloads before
> >> Request can complete.
> >>
> >> What's the correct way to accomplish this? Is there a way to make page
> >> Unload wait until the
> >> Request is sent (but not until the server responds)??
> >>
> >> thanks!
> >>
> >> --
> >> You received this message because you are subscribed to the Google
> >> Groups "Prototype & script.aculo.us" group.
> >> To post to this group, send email to
> prototype-scriptaculous@googlegroups.com
> >> .
> >> To unsubscribe from this group, send email to
> prototype-scriptaculous+unsubscr...@googlegroups.com<prototype-scriptaculous%2bunsubscr...@googlegroups.com>
> >> .
> >> For more options, visit this group at
> http://groups.google.com/group/prototype-scriptaculous?hl=en
> >> .
> >>
> >
> > --
> > You received this message because you are subscribed to the Google Groups
> "Prototype & script.aculo.us" group.
> > To post to this group, send email to
> prototype-scriptacul...@googlegroups.com.
> > To unsubscribe from this group, send email to
> prototype-scriptaculous+unsubscr...@googlegroups.com<prototype-scriptaculous%2bunsubscr...@googlegroups.com>
> .
> > For more options, visit this group at
> http://groups.google.com/group/prototype-scriptaculous?hl=en.
> >
> >
>
> --
> You received this message because you are subscribed to the Google Groups
> "Prototype & script.aculo.us" group.
> To post to this group, send email to
> prototype-scriptacul...@googlegroups.com.
> To unsubscribe from this group, send email to
> prototype-scriptaculous+unsubscr...@googlegroups.com<prototype-scriptaculous%2bunsubscr...@googlegroups.com>
> .
> For more options, visit this group at
> http://groups.google.com/group/prototype-scriptaculous?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To post to this group, send email to prototype-scriptacul...@googlegroups.com.
To unsubscribe from this group, send email to 
prototype-scriptaculous+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/prototype-scriptaculous?hl=en.

Reply via email to