用ajax技术实现无闪烁定时刷新页面
在Web开发中我们经常需要实现定时刷新某个页面:1.来保持session的值或者检查session的值是否为空(比如说防止同一用户重复登录);2.实现实时站内短信;3.定时更新页面数据等等。但是我们在网上搜搜会发现有很多定时刷新页面的方法,最简单的就是在<head></head>标记之间加上如下代码:
在<head></head>标记之间加上代码,实现定时刷新,此代码我已经测试过,可以实现效果
<meta http-equiv="refresh" content="5" URL="Example.aspx" />
说明:content的值代表页面刷新的间隔时间,以秒为单位
URL的值指定刷新的页面
还有一种方法就是用JavaScript来定时刷新页面
JavaScript定时刷新页面,此代码我没有经过测试
Code1 <script> 2 var limit="0:10" 3 if (document.images){ 4 var parselimit=limit.split(":"); 5 parselimit=parselimit[0]*60+parselimit[1]*1; 6 } 7 function beginrefresh(){ 8 if (!document.images) 9 return; 10 if (parselimit==1) 11 window.location.reload(); 12 else{ 13 parselimit-=1; 14 curmin=Math.floor(parselimit/60); 15 cursec=parselimit%60; 16 if (curmin!=0) 17 curtime=curmin+" min "+cursec+" sec "; 18 else 19 curtime=cursec+" sec "; 20 window.status=curtime; 21 setTimeout("beginrefresh()",1000); 22 } 23 } 24 window.onload=beginrefresh;
25 </script>
加到body中间,这里是0:10为10秒钟,可以自定义
当然还有很多中方法,我这里就不一一列举了。用以上方法刷新页面有点缺点就是刷新页面的时候会闪烁,那样的话如果需要在短时间内就刷新的话估计用户的眼都闪坏了,而且也显得我们太不专业了吧。
ajax+js实现无闪烁定时刷新页面
Code
<script type="text/javascript">
function makeRequest() {
var guid = rnd();
//记住给个随机数,不然的话有缓存
var url = "example_b.aspx?id=" + guid;
createXMLHttpRequest();
xmlHttp.onreadystatechange = handleRefresh;
xmlHttp.open("GET", url, false);
xmlHttp.send(null);
}
//创建xmlHttp
var xmlHttp;
function createXMLHttpRequest() {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
}
//返回信息
function handleRefresh() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
if (xmlHttp.responseText == "sessionNull") {
//alert('登录超时,帐户注销,请重新登录...');
window.parent.document.location = "UserLogin.aspx";
}
setTimeout("makeRequest()", 8*000);
}
}
}
//创建随机数
rnd.today = new Date();
rnd.seed = rnd.today.getTime();
function rnd() {
rnd.seed = (rnd.seed * 9301 + 49297) % 233280;
return rnd.seed / (233280.0);
}
function rand(number) {
return Math.ceil(rnd() * number);
}
</script>
举个例子,比如说要example_a.aspx页面加载以后让测试页面example_b.aspx每8秒刷新一次,检查存放登录用户名的session值是否为空,如果session为空,则返回登录页面。那么我们可以将上面的js代码放在example_a.aspx页面的<head></head>标记之间,然后在页面body的onload事件中调用上面的方法:οnlοad="makeRequest()",然后在页面的Page_Load事件中判断:
if (Session["user"] == null)
Code
{
Response.Clear();
Response.Write("sessionNull");
Response.End();
}
用ajax技术实现无闪烁定时刷新页面相关推荐
- java ajax 定时刷新_用ajax技术实现无闪烁定时刷新页面
function makeRequest() { var guid = rnd(); //记住给个随机数,不然的话有缓存 var url = "example_b.aspx?id=" ...
- 用Ajax+js+jQuery实现无闪烁定时刷新页面 定时刷新
本人想在一个JSP页面上显示一个消息模块,这个消息需要定时更新,请问大家如何用Ajax+js+jQuery实现无闪烁定时刷新页面功能.本人使用的js框架是jQuery. 先说思路,那就是在前端用 js ...
- 无闪烁刷新页面 php,AJAX_Ajax实现无闪烁定时刷新页面实例代码,在Web开发中我们经常需要实现 - phpStudy...
Ajax实现无闪烁定时刷新页面实例代码 在Web开发中我们经常需要实现定时刷新某个页面: 1.来保持session的值或者检查session的值是否为空(比如说防止同一用户重复登录): 2.实现实时站 ...
- 取消ajax请求时页面闪烁,用Ajax+js+jQuery实现无闪烁定时刷新页面
你好你说的是轮询拉去服务端的信息,先说思路,那就是在前端用 js setInterval 函数每隔30秒时间请求一次 通知结果然后返回给 前端 html 标签 实现无刷新 更新通知,我想本网站跟知乎的 ...
- Response_输出数据,实现文件下载,定时刷新页面,是否缓存,重定向,实现验证码...
1.Response_输出数据 1.Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象. ServletRespon ...
- JSP简单练习-定时刷新页面
<%@ page contentType="text/html; charset=gb2312" %> <%@ page import="java.ut ...
- 使用ajax+php+mysql实现数据库定时刷新
php版本5.5.9,mysql版本5.7. 所以php链接mysql就是使用mysql_connect. 如果遇到了连接时没有成功也没有失败的情况时,就重启mysql,或重启docker(睡一觉就好 ...
- 无门槛vbs定时刷新页面
无门槛vbs定时刷新电脑页面 本文为一篇福利篇,无门槛,是个电脑都能直接用.之前小编在网上看到有人要可以不用手动,能定时刷新电脑屏幕的代码,故此整理了一个精简的代码,如下: (行外看精彩,行内看笑话, ...
- 根据需求实现页面无动态定时刷新、清除定时刷新功能
今天在做项目的时候碰到一些问题 ,就是,我想实现这样一个功能: 1.窗体加载时执行某个方法 ,并且,让页面每隔5秒钟定时刷新执行这个方法(function one): 2.当你点击某个按钮时,清除(1 ...
最新文章
- python 读取图片成为一维数组_python+opencv 图像的数组和矩阵操作
- 电灯泡内通有交流电,为什么看不到灯泡在闪烁?
- 这是一位川大零基础转行 Python 的人生勇士
- C#与.NET程序员面试宝典 1.3 投递简历
- 互联网企业安全高级指南3.5 选择在不同的维度做防御
- 树莓派apt-get update速度慢的解决方法
- C++安全方向(三):3.7 使用openssl_evp接口完成SHA3和国密SM3
- android基础开发 书,Android 开发基础
- C# 时时监听目录文件改动
- 怎么算php入门了,PHP入门算数运算符大全
- 百度地图开发(安卓)
- 解决Mac系统更新后,SVN无法使用的问题
- NS2:添加一个新的流量发生器(poisson分布)
- 【C语言】数据表现形式及基本数据类型
- Mikrotik ROS软路由配置PCC负载均衡实现双宽带叠加
- 261. Graph Valid Tree
- nuc9vxqnx_Intel NUC 9 Pro / Extreme(幽灵峡谷 / 石英峡谷)即将发售
- 让人心动的jQuery插件和HTML5动画
- 重启服务器后hyperv虚拟机没了,微软Hyper-V 虚拟化和灾难恢复
- 亚丁号自动阅读第一次更新
热门文章
- QT的QRubberBand类的使用
- linux命令实验设备,实验二 Linux系统的常用命令
- 13.3.虚拟化工具--jinfo详解
- 07_设置坐标轴刻度、设置刻度标签(Setting Tick Labels)、调整刻度标签 (Adjusting the ticklabels)
- Hibernate延迟加载
- redis 获取所有key_Redis笔记
- linux内核之内存管理.doc,linux内核之内存管理.doc
- Faster RCNN参数详解
- OpenCV中像素逻辑运算:逻辑或运算
- VMware新装CentOS无法连接外网解决方法