例如,CSDN里,一个帖子有5个回复,怎么知道用户在哪个回复上的停留时间?一屏显示不完时,例如20个回复,利用滚动条的位置能计算吗?
解决方案 »
- myeclipse里配置tomcat的问题,求高手让我"快乐"一次!!
- socket编程遇到的小问题
- 对读库数据进行运算
- 如何实现用JAVA去匹配HTML源文件中有效的URL
- CallableStatement调用SQLServer存储过程的参数设置
- 一个简单而奇怪的问题
- 真是个奇怪问题?大家看一看,猜是什么原因!!我不知道的
- 关于在网页上显示ORACLE数据库里存储的图片的问题,谢谢!
- tomcat4.04的servlet目录如何配置?
- 在数据表中取出一个字段的值,为字符型字段,值为 "房款总计",它在JSP中如何与 "房款总计" 比较?
- 关于spring <prop key="java.naming.provider.url"> t3:// </prop>
- JSP点击按钮跳转页面
我的思路是这样的:你可以通过在滚动条滚动时触发一个事件,在这个事件中判断哪一个回复显示了出来;
然后创建一个定时器来计时。前半部分可参考我的博客:http://blog.csdn.net/im110/article/details/6450322
如果可以,还是可以计算出显示(这里把显示时间作为停留的时间)时间的,就是各个元素显示的累积和;
如一个帖子回复的内容都会随滚动而显示此内容,且是由某element表示,
当显示时,就计算,不显示,不计算,直到页面退出;
关键就是获取过滤显示的elements,最后累计时间;
这个可以引导用户互动,现在很多网站都是,比如百度百科的,[对我有用],CSDN的回复也有个[对我有用],一般情况下,如果真的用户看了这个回复,一般鼠标都会在回复内容所在块上移动经过或停留,或者点击,选中等操作,总之就是与回那块进行互动,如果单独是计时,也不一定准。只能说明这块在用户浏览器上显示了很久,包括用户可能打开页面就吃饭去了,或者甚至屏幕都待机了。所以应该把停留时间和操作强度结合,另外还可以和像[对我有用]、[引用]这样的用户交互进行结合。另外,计算某个块在可显示区域的停留状态和时间应该是可以用js实现的
这个倒挺简单.如果要实现对某一回复的停留时间,这个不好控制吧.
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title><script language="javascript">var times =new Array (0,0,0,0,0,0,0,0,0,0);
var timeFun = null;
function start(obj,index,time){
if(timeFun != null){
window.clearInterval(timeFun);
}
timeFun = window.setInterval(add,1000,obj,index,time);
}function end(obj,index,time){
if(timeFun != null){
window.clearInterval(timeFun);
timeFun = null;
}
}
function add(obj,index,time){
times[index] = times[index]+time;
obj.innerHTML = "停留时间:" + times[index];
}</script>
</head><body><div id="rpy1" style="height:100px; width:90%; background-color:#CCC; border-color:#00C; margin:10px; padding:10px;" onmouseover="start(this,0,100)" onclick="add(this,0,200)" onmousemove="add(this,0,1)" onmouseout="end(this,0,0)">DIV1</div>
<div id="rpy2" style="height:100px; width:90%; background-color:#CCC; border-color:#00C; margin:10px; padding:10px;" onmouseover="start(this,1,100)" onclick="add(this,1,200)" onmousemove="add(this,1,1)" onmouseout="end(this,1,0)">DIV2</div></body>
</html>
关键是自己制订方案,实现不是问题