基于鼠标点击跟踪的用户点击行为分…

 你想知道你的网站设计是否合理吗?你确定你的那些按钮和链接是放在该放的位置了吗?你想知道用户到底对页面上的哪些地方感兴趣吗?

没有人能猜出来用户到底喜欢什么,那些“我以为”“我觉得”云云都是扯淡。你有数据吗?
前一阵看到车东的《基于鼠标点击跟踪的用户点击行为分析》,觉得是个很不错的主意,可以跟踪点击行为来分析用户在自己网站上的行为特点,给设计部门一个直观的科学的参考,进而进行有针对性的改进。自己试验了一下,效果非常very相当的goood。

以下是我试验的具体过程:
首先在需要跟踪用户点击行为的页面加入下面的javascript脚本(注意,下面的脚本是在车东的脚本基础上做的改进,使之兼容Firefox和IE):

<script
language="javascript">
function clickStat(evt) {
//下面的try-catch语句兼容不同浏览器下创建element的方法;
try{
var image =
document.createElement_x("<img></img>");

}catch(err){
var image = document.createElement_x('img');
}
//这里不用document.body.scrollLeft方法来获得滚动条的值,因为在w3c标准的网页中返回值始终为0;
var tempX = evt.clientX +
document.documentElement.scrollLeft;
var tempY = evt.clientY + document.documentElement.scrollTop;
image.src = "/click_stats.php?width=" + screen.width +
"&x=" + tempX + "&y=" +
tempY;
image.height = 0;
image.width = 0;
//下面的try-catch语句屏蔽Firefox下的报错信息;
try{
document.body.insertBefore(image);
}catch(err){}
return true;
}
</script>

 

经过本人在IE以及MAXTHON下的测试,document.documentElement.scrollLeft和document.documentElement.scrollTop返回值都是0,不知道原著是否有错误。全部改成document.body.scrollLeft和document.body.scrollTop就可以了!

 

然后在<body>标签中加入onmousedown=”clickStat(event);”方法。这样做也是为了浏览器兼容(tmd,这些烂标准啥时候能统一)。

在服务端用click_stats.php来接收传递过来的参数,并记录到指定的文件中。如果对多个页面进行统计,还可以在参数中增加页面信息,在服务器端根据页面参数把数据保存到不同的文件中。

接收到的参数包括客户端的屏幕分辨率和点击时的具体坐标,可以根据自己的需要对采集到的数据进行分析。例如,可以确定页面上每个按钮或链接的具体坐标范围,来统计每个按钮或链接的点击次数以及占所有点击次数的百分比。

为了更加直观,我把完整的页面截了一个图作为背景,然后用gd在图上把采集到的数据画成一个个的点,这样就可以清晰的看到页面的点击情况,被点击次数多的按钮或链接,点分布的非常密集,反之就非常稀疏,或者根本没有。直观的反映了受欢迎的程度。

还有需要注意的是,在进行分析的时候一定要考虑到分辨率的问题,例如如果用来画点的背景截图是1024的,而客户端的分辨率是1280的,在画这个坐标点的时候就要在横坐标上减去128。

 

128象素是这样计算出来的,(($ScreenWidth-1024)/2),我们以1024做标准宽度,其他比1024大的显示器分辨率要相应减去一部分数值。比1024小的分辨率要加上这个数值。

if(
$_GET[width] > "1024") $_GET[x]
=  $_GET[x] - ( ( $_GET[width] - 1024 ) % 2
);
elseif( $_GET[width] < "1024") $_GET[x]
=  $_GET[x] + ( ( 1024 - $_GET[width] ) % 2
);

看到统计结果,你就会发现很多地方和你想象的很不一样。没有为什么,真实的数据才能真实的反映用户的行为,而我们作为网站的设计和实现者,完全不能代表普通用户,往往一厢情愿的得到错误的结论。

 

由于要做一个比较通用的系统,总不能每次都要截图吧。所以下面给出一些解决方法。

 

关于网页缩略图,只有在一个网页的缩略图上成功的绘制出用户鼠标所点击过的点,才能看到哪些地方热门,哪些地方冷门。要得到真是的缩略图不一定要得到‘真图’。这个<iframe
src="<?=$siteurl?>" width="100%"
height="<?=$max_y?>" frameborder="0"
marginheight="0"></iframe>可以帮助我们实现这个愿望。在框架中隐藏调用这个页面的。那么这个‘图’就可以当作我们的背景图了。只要把数据绘制在这个图上就可以了哦。

 

PHP是不能够在一个页面上绘制图形的,它需要在一个图片上才可以的。那你有没有想到PHP是否可以绘制‘透明图’呢? 

 


$im 
=  imagecreate 
($max_x,$max_y); 
$background_color 

ImageColorAllocate($im, 
0,255,0);  // 
指派一个绿色 
imagecolortransparent($im,$background_color); 
//  设置为透明色,若注释掉该行则输出绿色的图
$tc  = imagecolorallocate ($im, 0, 0,
0);

for($i=0;$i<count($file);$i++)

{
 imagesetpixel($im,$x[$i],$y[$i],$tc);

}
imagepng 
($im); 
imagedestroy 
($im); 

 

上面的代码就是绘制一个透明图层。HTML代码里面有个‘层’的定义,它可以悬浮在某一个网页的上面,左右漂移,以前很多网站广告就是这样做的。这里我们不是用来作广告,而是借用这个思路。


<?
 $max_y= $_GET[max_y];
 $siteurl  =
$idr[siteurl];
?>
<style type="text/css">
<!--
#Layer1 {
 position:absolute;
 left:0px;
 right:0px;
 top:0px;
 width:100%;
 height:100%;
 border:#000000 1px dashed;
 z-index:1;
}
body{margin:0px;}
-->
</style>
<div id="Layer1"
align="center"><img
src="click_stat_img.php?siteid=<?=$siteurl?>"></div>

<div
align="center"><iframe
src="<?=$siteurl?>" width="100%"
height="<?=$max_y?>" frameborder="0"
marginheight="0"></iframe></div>

 

click_stat_img.php用来绘制图形。

 

具体参考这个实例:http://count.bb258.com/clickmap/click_list.php

时间: 2024-09-06 12:58:01

基于鼠标点击跟踪的用户点击行为分…的相关文章

《SEO的艺术(原书第2版)》——1.8 点击跟踪:用户如何点击自然搜索和付费搜索结果

1.8 点击跟踪:用户如何点击自然搜索和付费搜索结果 现在,你应该已经确信自己希望排在SERP的前列了.在自然搜索结果中排名第一绝没有什么坏处.与此相反,数据显示,在付费搜索结果中排名第一可能不是你的愿望,因为在PPC活动中排名第一可能降低营销活动的净盈利总额.AdGooroo于2008年6月公布的研究发现:争夺PPC排名靠前的位置,在财务上只对高预算的品牌广告商有意义.大部分其他广告商将会发现,大部分关键词的最佳位置在第5-7位.当然,许多广告商可能出于各种原因追求付费搜索结果的第一位.例如,

中科院中令人期待的鼠标点击跟踪分析 竟然是抄袭

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 今天在ADMIN5上面看到了中科院的一个令人期待的产品,维度统计,其中里面最令人期待的是其中的鼠标点击跟踪分析功能,赶紧打开了Vdoing的首页.结果却是8月1日即将发布的等待页面. 晚上回家无聊之际,再次打开Vdoing,心想既然做这个统计产品就应该已经把自己的产品用上了吧.随打开源代码查找.果不其然,找到了一个实验室的产品代码.随之顺藤摸

网站数据分析:SkyGlue—用GA标记用户生成点击流

中介交易 SEO诊断 淘宝客 云主机 技术大厅 最早看到SkyGlue这个工具是在Cloga博客的文章,后来经过jasseyyang的推荐,向SkyGlue的cindy申请开通了博客GA账号的试用.经过一段时间的使用,现在来简单介绍一下SkyGlue这个工具. SkyGlue是Google Analytics的一个扩展工具,基于对网站中唯一访客的识别和标记,自动追踪网站的事件监控,记录用户操作的点击流数据.SkyGlue同样是通过JS页面标记进行安装部署,不过前提是你已经部署了GA的代码,因为S

网站分析:监控网站的用户点击行为

网页制作Webjx文章简介:用户点击对你的网站重要吗? --基于Google Analytics的应用 用户在网站的行为其实无非就是输入和点击,而点击又是最常见的行为,其实用户行为分析一大部分就是在分析用户各种各样的点击行为.我们可以通过各种途径来监控用户点击行为,同时各类网站分析工具都相继提供了丰富的事件监控功能,来满足不断发展变化的网站交互.刚好我的博客需要监控某些用户点击行为,并且要将这些点击行为设置成网站目标,所以这里跟大家分享一下我的实现步骤. 用户点击对你的网站重要吗? 首先需要明确

确定部位-android 如何判断用户点击的是人体哪个部位

问题描述 android 如何判断用户点击的是人体哪个部位 设计师给了一张1160 x 638的整的一张人体图,我该怎么实现用户在点击人体图片时,点击的是哪些部位呢? 特别希望大神们给出这样一个例子效果,点击头,土司头部:手,土司手臂:胸,土司胸部:腹,土司腹部:腿,土司腿部等... 解决方案 我看到你说其他的一些App的效果,当然咯,我没有说其他几位仁兄给的方法不好的意思,但实事求是的说,当页面多了之后,这种方案就不大灵活了.也有人提到了OnTouchEvent函数,可以用它来处理屏幕事件.对

《SEO的艺术(原书第2版)》——1.7 注意力跟踪:用户如何浏览搜索结果页面

1.7 注意力跟踪:用户如何浏览搜索结果页面 调查公司Enquiro.Eyetools和 Didit发起的搜索引擎用户热图(heat-map)测试产生的结果引人注目,揭示了用户参与搜索活动时查看的内容和焦点.图1-8描述了Google上进行的热图测试.该图表明,用户的注意力大部分时候集中在左上角阴影最深的位置. 2006年11月公布的这项研究清楚地说明,比起页面上方,页面下方的内容吸引的注意力很少,用户的注意力被吸引到以粗体表示的关键词.标题和自然("有机")结果的描述,而付费搜索列表

EXCEL导出的时候, 当用户连续点击导出按钮二次以上的时候, 就会出错!

问题描述 //开始//创建实例if(myExcelExport==null)myExcelExport=newExcelExport();//写入数据,该过程省略//结束问题:当用户连续点击导出按钮二次以上的时候,就会出错:类Range的PasteSpecial方法无效我的初步分析:就像用户不断刷新屏幕一样,如何防止用户这样的操作呢? 解决方案 解决方案二:变灰色,导出之后变回来.或者用模态对话框解决方案三:引用1楼yfqvip的回复: 变灰色,导出之后变回来.或者用模态对话框 一种做法如果不想

黑客词典 | 无需用户点击就能感染电脑的恶意广告

本文讲的是 黑客词典 | 无需用户点击就能感染电脑的恶意广告,恶意广告,顾名思义,黑客在合法网站上购买一块空间,上传能够感染网站访问者电脑的广告. 新闻页面看上去很无辜.除了名人八卦和杂志板面,英国新闻网站每日邮报(The Daily Mail)似乎没有包含什么特别恶意的东西.然而,如果你在今年十月访问该网站,就可能在不知不觉中落入黑客的复杂圈套. 在每日邮报的后台中,第三方广告暗中将读者重定向到强大的漏洞利用工具包,并利用这些工具包在用户电脑上安装恶意软件. 恶意广告正在蓬勃发展:网络罪犯在互

基于JavaScript实现移动端点击图片查看大图点击大图隐藏_javascript技巧

一.需求 点击图片查看大图,再点大图隐藏.多用于移动端,因为移动端屏幕小,可能需要查看大图. 二.代码 <!DOCTYPE html> <html> <meta charset="utf-8"/> <head runat="server"> <title>JQuery点击图片查看大图by starof</title> <style type="text/css">