Web的桌面提醒(Popup)
大多数Windows程序都有桌面提醒(Popup)功能,如Msn Messenger,Outlook2003,FoxMail,SharpReader等,对用户来说可以非常的方便最新的信息。
在Web中借用IE5.5+的Popup,也可以实现类似的功能,在CnForums1.2中新增了一种特性就是类似于Outlook2003一样,当有新帖子/私人留言时就有Popup提示,如图:现在就技术问题介绍一下:
一,什么是Popup
在IE5.5+中开始支持的Popup窗口有很多很特别的特性:
- Popup窗口可以超出浏览器窗口区域;
- 可以不用担心被下拉框、flash、Iframe等这些东西遮挡;
- 即时窗口没有焦点,Popup窗口也可以弹出并显示
- 一个Popup窗口打开后,当在它的区域以外点击或者另一个Popup窗口被打开时都会自动关闭;
- Popup窗口是没有焦点的;
- 用户不能改变Popup窗口大小;
- Popup窗口中的内容是不能被选择的;
- ......
只是Web下的Popup比起Windows中的Popup还是弱一些,但是已经够用了。Msdn上对Popup有非常详细的介绍“Using the Popup Object (Internet Explorer - DHTML) ”
二,怎么创建一个Popup
Msdn上的示例代码:
// 创建Popup对象
var oPopup = window.createPopup();
// Popup对象和Window对象一样,里面包含了一个完整的HTML文档
var oPopupBody = oPopup.document.body;
![]()
// 在Body中插入HTML
oPopupBody.innerHTML = "Display some <B>HTML</B> here.";
// 设置显示的位置、大小、参照物
oPopup.show(100, 100, 200, 50, document.body);
三,Popup的显示
多个Popup不能共存(Popup中创建Popup除外),所以web中的Popup不方便像Msn Messenger的Popup提示那样“爬楼梯”,所以最简单有效的方法就是像Outlook2003的Popup一样,逐个Popup提醒。
(参考WebMessenger的实现)用Js建个队列,将需要Popup提示的内容都放在队列中,用一个定时器,定时从队列中取一个Popup,每个Popup显示7秒。
四,怎么知道有新帖子
在Web程序中,只能通过“拉”的技术,即定时向服务器发送请求——通过定时刷新或者是xmlhttp的Get。
我们需要有个时间戳来记录最后请求时间,这样就好根据这个时间戳来获取时间戳之后的帖子。
如果每次根据时间戳来获取最新帖子,服务器负荷比较大,因为并不是每次请求都有新帖子的,优化一下,再给每个在线用户设置有无新帖子、有无新留言的状态位,当发表新帖子后更新每个人的“有无新帖”状态位。这样每次请求时先判断有没有新帖子,如果有新帖子,才获取所有帖子的标题和内容简要。
五,具体实现
客户端代码:http://webuc.net/MyProject/Popup/popup.htm
http://webuc.net/MyProject/Popup/popup.rar
和论坛程序的结合:
demo: http://bbs.openlab.net.cn (登录后有新帖子即提示(IE5.5+))
http://bbs.openlab.net.cn/PostAttachment.aspx?PostID=376725
相关文章:

linux的裁剪过程,让你的小linux更加完善,赶快试试吧!
一、系统启动流程: 1、POST-->BIOS(Boot Sequence)--> BootLoader(MBR)--> Kernel(initrd,initramfs)--> init (/etc/inittab) 第一步首先加电自检,计算机本身不会执行程序,由此它会…

《Adobe Premiere Pro CC经典教程(彩色版)》——2.2 建立项目
本节书摘来自异步社区《Adobe Premiere Pro CC经典教程(彩色版)》一书中的第2课,第2.2节,作者 【英国】Maxim Jago(马克西姆 亚戈),译者 陈昕昕,郭光伟 ,更多章节内容可以…

针对《评人工智能如何走向新阶段》一文,继续发布国内外的跟贴留言第二部557-561条如下
557,解决最后一公里短板,提升语义网络内涵,使之具有实现可解释人工智能(或实现认知智能)的能力,尚待努力! 在跟贴263、521中,谈到提升语义网络内涵的解决之道,要坚持数据…

struts2+hibernate+Spring分层开发
web.xml中要加Spring的listener,struts2的filter的配置。UI struts2: jsp struts.xml ActionSpring ActionSpring:applicationContent-actions.xml Service Spring:applicationContent-services.xml DAO Entity DAL hibernate: …

DataGrid鼠标事件处理
http://blog.csdn.net/bgu/完成功能是DataGrid的页面选中事件、鼠标事件、双击事件改变TR的色彩。代码很简单,只是一点JS操作。JS文件:GridControl.js/*------------ DataGrid鼠标事件处理 ------------功能:用于数据梆定后鼠标事件参数说明:obj:对像thisfontColor:…

《精通 ASP.NET MVC 3 框架(第三版)》----第2章 准备工作 2.1 准备工作站
本节书摘来自异步社区《精通 ASP.NET MVC 3 框架(第三版)》一书中的第2章,第1节,作者: 【美】Adam Freeman , Steven Standerson,译者: 林逸 , 李萍 , 更多章节内容可以访问云栖社区…

DataGrid鼠标事件方法
http://blog.csdn.net/bgu/ JS文件源码:GridColorControl.js/*-----------------调用说明-----------------说明:可用于架设页面事件。入口函数:OnFocusSet(....)如:OnFocusSet( "#000000","#FFFFFF","#…
张亚勤谈数字化3.0:由物理与生物世界的数字化构成 | WIC
11月23日至24日,一年一度的世界互联网大会互联网发展论坛如期召开。全球疫情冲击下,科技创新成为了海内外共同关注的焦点。其中,人工智能作为新一轮科技革命和产业变革的重要驱动力量,同样饱受关注。在24日上午的“人工智能&#…

print_r() 'ThinkPHP\Common\common.php 601
Fatal error: print_r() [<a hrefref.outcontrol>ref.outcontrol</a>]: Cannot use output buffering in output buffering display handlers in D:\www\bjydf\ThinkPHP\Common\common.php on line 601 在thinkphp中用phpexcel导出数据错误<b>Fatal error<…

《Android传感器开发与智能设备案例实战》——导读
本节书摘来自异步社区《Android传感器开发与智能设备案例实战》一书中的目录,作者 朱元波,更多章节内容可以访问云栖社区“异步社区”公众号查看 目 录前 言 第1章 Android开发技术基础 第1章第1.1节智能手机操作系统介绍第1章第1.2节Android的巨大优势[…

详解基于busybox、dropbear、ngnix制作完整的嵌入式Linux系统
说明: 《一》:查看此博文,建议查看笔者上一篇博文(Linux启动过程),因为只有在完全了解Linux系统启动流程及一些配置文件的相关性,在阅读此博文才能有思路,理解起来更容易写。 《二》:此…
CSDN湘苗培优,打造高素质技术人才
前言2020年长沙发出软件再出发号召,同时发布了《长沙市软件和信息技术服务业发展三年(2020-2022 年)行动计划》。当软件产业的生态逐渐建立,企业孵化培育的土壤逐渐肥沃,长沙软件产业焕发出前所未有的活力和生机,一大批软件产业项…

在ASP.NET 中实现单点登录
出自:【孟宪会之精彩世界】 发布日期:2005年1月27日 8点48分0秒 [有删改] 由于某些原因,在我们的应用中会遇到一个用户只能在一个地方登录的情况,也就是我们通常所说的单点登录。在ASP.NET中实现单点登录其实很简单,下…

《Unity着色器和屏幕特效》——2.2 进阶的透明效果
本节书摘来自华章计算机《Unity着色器和屏幕特效》一书中的第2章,第2.2节,作者[美]杰米迪恩(Jamie Dean),译 周翀,张薇,更多章节内容可以访问云栖社区“华章计算机”公众…
机器模拟共情,情感AI正踏足诸多行业
作者 | 平凡来源 | CSDN作者简介:平凡,诺桑比亚大学计算机科学博士情感AI是一个跨学科领域,涉及计算机科学、 心理学和认知科学,旨在研发能够识别、解释、处理、模拟人类情感的系统。[虽然该学科最早可追溯至早期的哲学研究&#…

SQL Server 中各个系统表的作用
sysaltfiles 主数据库 保存数据库的文件syscharsets 主数据库 字符集与排序顺序sysconfigures 主数据库 配置选项syscurconfigs 主数据库 当前配置选项sysdatabases 主数据库 服务器中的数据…

“批判”按劳取酬
“批判”按劳取酬<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />Jack zhai按劳取酬的意思就是付出多少劳动,就获得多少报酬;这曾经是我认为最为合理的老板与员工之间的合约关系。然而近几年,…

《编译与反编译技术实战 》一2.3 编译器的设计与实现概述
本节书摘来自华章出版社《编译与反编译技术实战 》一书中的第2章,第2.3节,庞建民 主编 ,刘晓楠 陶红伟 岳 峰 戴超 编著,更多章节内容可以访问云栖社区“华章计算机”公众号查看。 2.3 编译器的设计与实现概述 根据不同的用…
U^2-Net跨界肖像画,完美复刻人物细节,GitHub标星2.5K+
来源 | Jack Cui头图 | CSDN下载自视觉中国今年提出的 U^2-Net 显著性检测算法,刷爆了 reddit 和 twitter,号称是 2020 年「地表最强」的静态背景分割算法,可以看下效果:你以为今天要讲分割?错!U^2-Net 这两…

使用sourceInsight 提高代码编写效率
source Insight是一个强大的程序编写器和代码浏览器,它拥有内置的对C/C,C#和Java等程序的分析。本文总结了常用的快捷键,重要的宏的应用(可以多行注释,自动补全,自动生成头文件和函数说明,修改说明……&…

php几个预定义变量$_SERVER['DOCUMENT_ROOT']
<?php echo documentroot:.$_SERVER[DOCUMENT_ROOT].<br>; //根目录,在apache的配置文件里定义:httpd.conf 比如:DocumentRoot "D:/work/php_root" echo httphost:.$_SERVER[HTTP_HOST].<br>; //域名,比如&#…

《用于物联网的Arduino项目开发:实用案例解析》—— 3.4 小结
本节书摘来自华章出版社《用于物联网的Arduino项目开发:实用案例解析》一 书中的第3章,第3.4节,作者[美]安德尔杰韦德(Adeel Javed),更多章节内容可以访问云栖社区“华章计算机”公众…

HttpClient学习
HttpClient学习 (1)下面列举几个主要的Http相关概念的类 类名描述HttpClient建立请求客户端HttpGet代表请求方法,类似的还有HttpHead, HttpPost, HttpPut, HttpDelete, HttpTrace, HttpOptions等HttpResponse表示请求的响应(包括…
赠书 | 新手指南——如何通过HuggingFace Transformer整合表格数据
作者 | Ken Gu翻译| 火火酱~,责编 | 晋兆雨出品 | AI科技大本营头图 | 付费下载于视觉中国*文末有赠书福利不可否认,Transformer-based模型彻底改变了处理非结构化文本数据的游戏规则。截至2020年9月,在通用语言理解评估(General …

在HTML网页中巧用URL
http://www.cnbruce.com/blog/showlog.asp?cat_id5&log_id657 首先,先放出一个地址给大家测试http://cnbruce.com/test/htmlpro/?namecnbruce&emailcnbruce126.com 1,时下流行的(可能是吧,因为最近问的人比较多…

《iOS 8应用开发入门经典(第6版)》——第1章,第1.6节小结
本节书摘来自异步社区《iOS 8应用开发入门经典(第6版)》一书中的第1章,第1.6节小结,作者 【美】John Ray(约翰 雷),更多章节内容可以访问云栖社区“异步社区”公众号查看 1.6 小结iOS 8应用开发…

用Visual C#创建Windows服务程序
一.Windows服务介绍: Windows服务以前被称作NT服务,是一些运行在Windows NT、Windows 2000和Windows XP等操作系统下用户环境以外的程序。在以前,编写Windows 服务程序需要程序员很强的C或C功底。然而现在在Visual Studio.Net下&a…

poj 3321 Apple Tree
树状数组 题意:一个树,以树枝连接两个点的形式给出,固定以1为整棵树的根。苹果长在树的节点上,节点上只可能0或1个苹果,一开始每个节点都有1个苹果 有两种操作,C表示更改某个节点的苹果数,0变1,…
人工智能在网络贷款中鲜为人知的事
作者 | Laksh Mohan翻译| 火火酱~,责编 | 晋兆雨出品 | AI科技大本营头图 | 付费下载于视觉中国现在,科技已经成为推动企业发展壮大的基本要素之一。人工智能(AI)就是一个证明此类技术在商业领域走红的好例子,比如网络…

《HTML5与CSS3实战指南》——2.5 构建The HTML5 Herald
本节书摘来自异步社区《HTML5与CSS3实战指南》一书中的第2章,第2.5节,作者: 【美】Estelle Weyl , Louis Lazaris , Alexis Goldstein 更多章节内容可以访问云栖社区“异步社区”公众号查看。 2.5 构建The HTML5 Herald 我们已经介绍了页面结构的基础以及…