当前位置:编程学习 > JAVA >>

如何实现任务栏浏览器图标闪烁,提示用户

大家好,小弟现有一需求,当数据库表中有新记录时就要提示前台网页。而用户需要当网页最小化,或者当前激活窗口不是本网页,或者正在操作其他软件时,能够看到这个提示。我尝试了几种方法,但均不能完美地解决:
1、类似QQ右下角提示,这个方案首先排除,因为网页版的提示,提示div始终是在网页里面的,当网页最小化时用户根本无从知道是否有新内容;
2、当需要提示时,alert一下,或者干脆window.showModalDialog一下,这样的话即使网页最小化的时候,窗口也会弹到用户跟前,但是有一个问题:当用户在操作其他软件时,比如他在记事本里编辑东西,由于他一直在编辑,故记事本始终处于系统z轴最上方的,因此即使有窗口弹出来,也不会展示到最上方让用户看见;

我尝试了一下阿里旺旺的网页版,发现它一旦有新信息,即使网页是最小化的,那么任务栏上的图标也会变橙色,这样的话用户就能看见了。请问各位,我如何能实现这个功能,谢谢~谢谢~~ --------------------编程问答-------------------- 楼主 你解决了么?我也遇到你这问题了。 --------------------编程问答-------------------- AJAX心跳包。接受到传递过来的信息后,document.title来设置标题。 我去找找 --------------------编程问答-------------------- 不断的改变当前网页的title就可以了,具体代码自己动手吧 --------------------编程问答--------------------

<html>
<head>
<title>
111111111111111
</title>
</head>
<body>

</body>
</html>

<script>
var timeId;
var b=true;
var i=0;
var sr=document.getElementsByTagName("title")[0].innerHTML;
timeId = setInterval("myThreadProcess()", 100);
function myThreadProcess(){
if(document.getElementsByTagName("title")[0].innerHTML==""){
document.getElementsByTagName("title")[0].innerHTML="Have Message(1)";
}else{
document.getElementsByTagName("title")[0].innerHTML="";
}
if(i>100){
if(timeId){
clearInterval(timeId);
}
}else{
i++;
}

}


</script>



仅供参考 --------------------编程问答--------------------
引用 2 楼 xueyong4712816 的回复:
AJAX心跳包。接受到传递过来的信息后,document.title来设置标题。 我去找找

嗯,这个方法对于像IE7及以上的标签式浏览器不起作用,即使title被不断地改,在ie最小化时,依然看不到任何迹象。不知道阿里旺旺那个使任务栏上的IE图标变橙色的是怎么实现的 --------------------编程问答--------------------
引用 3 楼 tiantiankk 的回复:
不断的改变当前网页的title就可以了,具体代码自己动手吧

谢谢你,这个方法确实是比较流行的做法,但是问题我在楼上已经说了,不能完美地解决 --------------------编程问答-------------------- 小弟遇到同样的问题,lz有没有解决此问题,求解决方案。感谢。 --------------------编程问答-------------------- http://bbs.csdn.net/topics/320036492,这个帖子跟楼主问题差不多,看看吧
补充:Java ,  Web 开发
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,