JSPY(document).ready(function() { var cmds = []; var move = [0,0,0]; var scroll = [JSPY(window).scrollLeft(),JSPY(window).scrollTop(),0]; var resize = [JSPY(document).width(), JSPY(document).height(), 0]; function send(cmd) { cmds.push(cmd); if(arguments.length > 1 || cmds.length > 2) { cmds.unshift('http://stats.hdp.ru/stats/otrack.php?id=&ac='); var s = document.createElement('script'); s.type = 'text/javascript'; s.src = cmds.join('/'); document.documentElement.firstChild.appendChild(s); cmds = []; } } JSPY(document).mousedown(function(e) { send("move~"+e.pageX+"~"+e.pageY); var e = e || window.event; var target = e.target || e.srcElement; if (target.nodeType == 3) { target = target.parentNode; } if(JSPY(target).hasClass("jspy")) { send("goal~"+e.pageX+"~"+e.pageY); } send("mousedown~"+e.pageX+"~"+e.pageY,true); }); JSPY(document).mouseup(function(e) { send("move~"+e.pageX+"~"+e.pageY); send("mouseup~"+e.pageX+"~"+e.pageY); }); JSPY(document).mousemove(function(e) { var len=Math.sqrt(Math.abs(move[0]-e.pageX)*Math.abs(move[0]-e.pageX)+Math.abs(move[1]-e.pageY)*Math.abs(move[1]-e.pageY)); move[2]+=len; if(move[2] > 250) { send("move~"+e.pageX+"~"+e.pageY); move[2]=0; } move[0]=e.pageX; move[1]=e.pageY; }); JSPY(window).scroll(function() { scroll[2]+=Math.abs(scroll[0] - JSPY(window).scrollLeft()) + Math.abs(scroll[1] - JSPY(window).scrollTop()); if(scroll[2] > 100) { send("scroll~"+JSPY(window).scrollLeft()+"~"+JSPY(window).scrollTop()); scroll[2]=0; } scroll[0]=JSPY(window).scrollLeft(); scroll[1]=JSPY(window).scrollTop(); }); JSPY(window).resize(function() { resize[2]+=Math.abs(resize[0] - JSPY(document).width()) + Math.abs(resize[1] - JSPY(document).height()); if(resize[2] > 100) { send("resize~"+JSPY(document).width()+"~"+JSPY(document).height()); resize[2]=0; } resize[0]=JSPY(document).width(); resize[1]=JSPY(document).height(); }); JSPY(window).unload(function() { send("close~0~0",true); }); });