jQuery实现类似微博定时刷新提示新消息的功能

1.引入jQuery文件

2.添加jquery.refresh.js文件,代码如下:

 1 /**
 2  * Created by Silver on 2015/11/27.
 3  */
 4
 5 (function ($) {
 6     $.refreshData = function (options) {
 7         var defaults = {
 8             url: ‘/order/ajax_new_count‘,//提交的地址
 9             contentData: {},
10             time: 15,
11             home: false
12         };
13         var opts = $.extend({}, defaults, options);
14
15         $.refreshData.init(opts);
16     };
17     $.refreshData.init = function (opts) {
18         $.refreshData.getContent(opts);
19     };
20     $.refreshData.getContent = function (opts) {
21         $.ajax({
22             type: ‘post‘,
23             url: opts.url,
24             data: opts.contentData,
25             success: function (data) {
26                 //提示新数据个数
27                 var num = data.d.count;
28                 if (num != 0) {
29                     $(document.body).append("" +
30                         "<audio  autoplay=‘autoplay‘>" +
31                         "<source src=‘/sound/newOrder.mp3‘ type=‘audio/ogg‘ />" +
32                         "<source src=‘/sound/newOrder.mp3‘ type=‘audio/mpeg‘ />" +
33                         "</audio>");
34
35                     $("#new-order-tip").css("display", "block");
36
37                     $("#new-order-tip").text("您有" + num + "单新任务");
38
39                     if (opts.home == true) {
40                         $("#new-order-tip").css("cursor", "pointer");
41                         $("#new-order-tip").click(function () {
42                             window.location.reload();
43                         });
44                     }
45                 } else {
46                     $("#new-order-tip").css("display", "none");
47                 }
48
49                 setTimeout(function () {
50                     $.refreshData(opts);
51                 }, opts.time * 1000)
52             },
53             error: function (XMLHttpRequest, textStatus, errorThrown) {
54                 //alert(XMLHttpRequest.status);
55                 //alert(XMLHttpRequest.readyState);
56                 //alert(textStatus);
57             },
58             dataType: ‘json‘
59         });
60     };
61 })(jQuery);

3.在调用页面调用该方法:

<script type="text/javascript">
    $(function(){
        //页面自动刷新
        $.refreshData();
    });
</script>

或(需要点击可刷新的页面):

<script type="text/javascript">
    $(function () {
        //页面自动提示新单子
        $.refreshData({home: true});
    });
</script>

4.在每次刷新的页面在对应请求的服务器端保存cookie存储当前的时间撮。

5.在数据库中有一个对应的新订单时间撮字段:如created。

6.查找created字段里的时间撮大于cookie里的时间戳的所有内容。

时间: 2024-10-18 23:12:20

jQuery实现类似微博定时刷新提示新消息的功能的相关文章

使用JQUERY实现局部页面定时刷新

没办法,运维会一点点前端,还是有好处的.. 说不定,BOOTSTRAP也得会一点点.. 本想用流式输出的搞定的,但没搞定,就取巧了... 代理简单: <script src="//cdnjs.cloudflare.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3

jQuery实现AJAX定时刷新局部页面实例

本篇文章通过两种方法实例讲解ajax定时刷新局部页面,当然方法有很多种,也可以不使用ajax来刷新页面,可以使用jquery中的append来给指定内容加东西, 但是都不太实用,最实用的方法还是ajax加载数据了. 方法一: 局部刷新我们讲述到最多的是ajax 了,当然也可以不使用ajax来刷新页面了,我们可以使用jquery中的append来给指定内容加东西了,当然最实用的还是ajax加载数据了. 例子,定时局部刷新 定时局部刷新用到jQuery里面的setInterval方法,setInte

解析:使用easyui的form提交表单,在IE下出现类似附件下载时提示是否保存的现象

原文:解析:使用easyui的form提交表单,在IE下出现类似附件下载时提示是否保存的现象 之前开发时遇到的一个问题,使用easyui的form提交表单,在Chrome下时没问题的,但是在IE下出现类似附件下载时提示是否保存的现象. 这里记录一下如何解决的.其实这个现象不光是easyui的form,还有其他一些form插件也是一样的,使用不当就会遇到这个问题. 前台: <!DOCTYPE html> <html> <head> <meta http-equiv=

jQuery实现网页右下角悬浮层提示

最近有同事提到类似网页右下角的消息悬浮提示框的制作.我之前也做过一个类似的例子,很简单.是仿QQ消息.现在感觉之前的那个例子只是说了实现原理,整体上给你的感觉还是太丑,今天为大家带来一个新的例子.是Discuz右下角悬浮层提示的.运行效果如下: 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-trans

PostgreSQL定时刷新物化视图的一种简单方法

PostgreSQL 9.3开始支持物化视图,9.4又增加了非阻塞的CONCURRENTLY选项,但REFRESH时却不支持类似START WITH ... NEXT ...的定时刷新选项. 如何实现定时刷新物化视图?百度的结果主要是以下三种: 借助操作系统,如Linux/Unix的crontab或Windows的定时任务: 借助插件pgAgent: 使用触发器,一般为语句级(... FOR EACH STATEMENT ...). 近日接触到\watch命令,发现了一种新的刷新物化视图的方法.

百度地图获取数据库点的坐标,并定时刷新到页面上

后台代码 先创建marker点的实体类(并利用Spring注解功能实现自动自动建表) 1 package com.sdtg.ditu.bean; 2 3 import javax.persistence.Column; 4 import javax.persistence.Entity; 5 import javax.persistence.GeneratedValue; 6 import javax.persistence.Id; 7 import javax.persistence.Tabl

如何让网页局部定时刷新?

如何逻辑整理? 1. 需要用到js的定时刷新函数  setInterval(function,time) 2. 只需要对网页中局部的标签进行刷新 函数中function为自定义函数,time是多久执行自定义函数,单位是毫秒 3. 可以通过定义自定义函数进行局部刷新,需要导入jquery 代码演示,如何? setInterval(function() { $("#history").load(location.href+" #history>*","&

js 页面定时刷新

html <label class="am-switch am-switch-lg"> <input type="checkbox" id="check_is_f"> <span class="am-switch-checkbox"></span> </label> 定时刷新 js //定时刷新 is_f = localStorage.getItem("is

table的定时刷新

1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <%@include file="/common/taglibs.jsp" %> 3 <html:base target="_self" /> 4 <%@page import="epm.sp.syspara.p