定时刷新页面SetInterval 和setTimeout -时间间隔可以动态设定
JS里设定延时:
使用SetInterval和设定延时函数setTimeout 很类似。setTimeout 运用在延迟一段时间,再进行某项操作。
setTimeout("function",time) 设置一个超时对象 setInterval("function",time) 设置一个超时对象
SetInterval为自动重复, setTimeout不会重复。
clearTimeout(对象) 清除已设置的setTimeout对象 clearInterval(对象) 清除已设置的setInterval对象
举例 1、:放到js代码中,页面加载完就设定了,时间到就刷新整个页面,缺点是无法动态更改刷新间隔。
function myrefresh() { window.location.reload(); }
setTimeout('myrefresh()',5000); //指定5秒刷新一次
方法二、 :<head><meta http-equiv="refresh" content="60"></head>
====为了实现可以更改动态修改刷新间隔【上面的方法是做不到的】
分析:因为本页面是用jsp 方式,没有用到异步刷新填充数据,目前很有局限性。
改造:方法1、不要刷新整个页面,定时触发ajax请求数据回来 动态创建表格填充数据;
方法2、用iframe的方式,弄成多页面的感觉,js 定时刷新 iframe里面的页面
方法3、还是采用目前方式,变通一下。动态参数通过请求地址参数 传递。js代码如下:
$(function() {
//先定义一个静态方法getUrlParam(拓展工具)的方式
(function($) {
$.getUrlParam = function(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null)
return unescape(r[2]);
return null;
}
})(jQuery);
var xx = $.getUrlParam('pn');//获取参数 大于0才设定,如果为0视为停止刷新
if (xx > 0) {
setTimeout('myrefresh1(' + xx + ')', xx);//设定本次定时间隔
} }); function queryItems() {
document.itemsForm.action = "${pageContext.request.contextPath }/coins/list.action";
document.itemsForm.submit();
}
function myrefresh1(interval) {
// window.location.reload();改用下方方法
self.location = 'list?pn=' + interval;//将时间间隔作为请求参数,controller中并不使用它
}
var st;
function StartReflesh() {
var time = document.getElementById("selectTime").value;//js获取值
st = setInterval('myrefresh1(' + time + ')', time);//设定定时间隔,并把 间隔传参给地址
}
function EndReflesh() {
// clearInterval(st);
self.location = 'list?pn=0';//停止刷新时参数 pn是为0
}
其实不断刷新页面是很不好的,最好异步请求数据 填充。 后续改善,待更新.....
定时刷新页面SetInterval 和setTimeout -时间间隔可以动态设定的更多相关文章
- JS定时刷新页面及跳转页面
JS定时刷新页面及跳转页面 Javascript 返回上一页1. Javascript 返回上一页 history.go(-1), 返回两个页面: history.go(-2); 2. history ...
- JSP简单练习-定时刷新页面
<%@ page contentType="text/html; charset=gb2312" %> <%@ page import="java.ut ...
- Angular 定时器$timeout和$interval关于定时刷新页面和发送请求的用法
项目中有用到定时器定时刷新页面的数据,在网上查看了一些资料,整理了一下,备忘. $timeout 用法如下:$timeout(fn,[delay],[invokeApply]); fn:一个将被延迟执 ...
- 【jQuery】: 定时刷新页面
<%@page import="qflag.ucstar.seatmonitor.manager.SeatMonitorManager"%><%@ page la ...
- js定时刷新页面.
//页面定时刷新.2017.09.27 $(document).ready(function () { self.setInterval(function () { var d = new Date( ...
- JavaScript定时调用函数(SetInterval与setTimeout)
setTimeout和setInterval的语法同样.它们都有两个參数.一个是将要运行的代码字符串.另一个是以毫秒为单位的时间间隔,当过了那个时间段之后就将运行那段代码. 只是这两个函数还是有差别的 ...
- Vue使用定时器定时刷新页面
1. 需求说明 在前端开发中,往往会遇到页面需要实时刷新数据的情况,给用户最新的数据展示. 2. 逻辑分析 如果需要数据实时更新,我们自然是需要使用定时器,不断的调用接口数据,会相对的消耗内存. 3. ...
- http-equiv="Refresh" 实现定时刷新页面
***.html自动跳转文件代码如下: <HTML> <HEAD><META http-equiv="Refresh" content="5 ...
- php+ajax+jquery 定时刷新页面数据
testajax.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...
随机推荐
- POJ 3687 Labeling Balls (top 排序)
Labeling Balls Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 15792 Accepted: 4630 D ...
- Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:co
在pom中加入下面代码: <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId&g ...
- YII 框架在windows系统下的安装
第一步,下载yiii框架 http://www.yiichina.com 第二步安装: 1.首先需要下载应用模板,分为基础模板和高级应用模板,这里我以高级应用模板为例子 : 去这里现在高级应用模板 h ...
- java中不定参数的使用
https://www.cnblogs.com/xy-hong/p/7192796.html
- console控制台的小问题
第一个foo里面应该是123,但是当执行完下面的代码之后,console控制台会自动将里面的内容改成我们修改之后的
- Oracle基础--创建临时表空间/表空间/创建用户/授权
总结:创建用户一般分四步: 第一步:创建临时表空间(创建用户之前要创建"临时表空间",若不创建则默认的临时表空间为temp.) SQL> CREATE TEMPORARY T ...
- FastDFS + Nginx代理方式访问
FastDFS + Nginx代理方式访问 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.在storage上安装nginx 1>.下载nginx软件(http://ngi ...
- linux优化之系统参数调优篇
linux优化之系统参数调优篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.用户限制配置文件(首先需要编辑/etc/security/limits.conf文件) 大家可以 ...
- Windows Dll Injection、Process Injection、API Hook、DLL后门/恶意程序入侵技术
catalogue 1. 引言2. 使用注册表注入DLL3. 使用Windows挂钩来注入DLL4. 使用远程线程来注入DLL5. 使用木马DLL来注入DLL6. 把DLL作为调试器来注入7. 使用c ...
- python 线程(创建2种方式,锁,死锁,递归锁,GIL锁,守护进程)
###############总结############ 线程创建的2种方式(重点) 进程:资源分配单位 线程:cpu执行单位(实体) 线程的创建和销毁的开销特别小 线程之间资源共享,是同一个 ...