js实现的标题栏新消息闪烁提示效果


Posted in Javascript onJune 06, 2014

公司的项目中用到了这个新消息提示的效果,主要用于提示用户有新消息。具体实现代码如下:

var newMessageRemind = {
  _step: 0,
  _title: document.title,
  _timer: null,
  //显示新消息提示
  show: function() {
    var temps = newMessageRemind._title.replace("【 】", "").replace("【新消息】", "");
    newMessageRemind._timer = setTimeout(function() {
      newMessageRemind.show();
      //这里写Cookie操作
      newMessageRemind._step++;
      if (newMessageRemind._step == 3) {
        newMessageRemind._step = 1
      };
      if (newMessageRemind._step == 1) {
        document.title = "【
 】" + temps
      };
      if (newMessageRemind._step == 2) {
        document.title = "【新消息】" + temps
      };
    },
    800);
    return [newMessageRemind._timer, newMessageRemind._title];
  },
  //取消新消息提示
  clear: function() {
    clearTimeout(newMessageRemind._timer);
    document.title = newMessageRemind._title;
    //这里写Cookie操作
  }

};

调用显示新消息提示:newMessageRemind.show();

调用取消新消息提示:newMessageRemind.clear();

另:单纯的这个代码会出现这么一个问题:
就是当你打开一个站点很多张页面的时候,如过有新消息,那么所有页面都会不停的闪,当你查看消息后其他页面仍会提示。

我们公司是通过使用Cookie的方式解决的,当查看新消息后所有标题闪动的页面将全部取消提示。

下面三水点靠木小编再推荐一段代码

<script>
(function() {
  var OriginTitile = document.title, titleTime;
  document.addEventListener('visibilitychange', function() {
    if (document.hidden) {
      document.title = '死鬼去哪里了!';
      clearTimeout(titleTime);
    } else {
      document.title = '(つェ⊂)咦!又好了!';
      titleTime = setTimeout(function() {
        document.title = OriginTitile;
      },2000);
    }
  });
})();
</script>

注意:上面的代码需用预加载jquery库才可以。直接放页面底部或js里面即可

Javascript 相关文章推荐
javascript 延迟加载技术(lazyload)简单实现
Jan 17 Javascript
jQuery EasyUI API 中文文档 搜索框
Sep 29 Javascript
JS获取页面窗口大小的代码解读
Dec 01 Javascript
Ext4.2的Ext.grid.plugin.RowExpander无法触发事件解决办法
Aug 15 Javascript
点评js异步加载的4种方式
Dec 22 Javascript
JQuery EasyUI Layout 在from布局自适应窗口大小的实现方法
May 28 Javascript
JS控制FileUpload的上传文件类型实例代码
Oct 07 Javascript
详解jQuery简单的表单应用
Dec 16 Javascript
轻量级JS Cookie插件js-cookie的使用方法
Mar 22 Javascript
JS与CSS3实现图片响应鼠标移动放大效果示例
May 04 Javascript
JS使用Date对象实时显示当前系统时间简单示例
Aug 23 Javascript
vue+element实现表格新增、编辑、删除功能
May 28 Javascript
IE中图片的onload事件无效问题和解决方法
Jun 06 #Javascript
jQuery插件分享之分页插件jqPagination
Jun 06 #Javascript
javascript中的return和闭包函数浅析
Jun 06 #Javascript
seaJs的模块定义和模块加载浅析
Jun 06 #Javascript
使用GruntJS构建Web程序之Tasks(任务)篇
Jun 06 #Javascript
javascript中加号(+)操作符的一些神奇作用
Jun 06 #Javascript
使用GruntJS构建Web程序之合并压缩篇
Jun 06 #Javascript
You might like
php 应用程序安全防范技术研究
2009/09/25 PHP
php中关于普通表单多文件上传的处理方法
2011/03/25 PHP
PHP中输出转义JavaScript代码的实现代码
2011/04/22 PHP
PHP命名空间(namespace)的使用基础及示例
2014/08/18 PHP
PHP实现文件上传功能实例代码
2017/05/18 PHP
PHP CodeIgniter分页实例及多条件查询解决方案(推荐)
2017/05/20 PHP
Aster vs Newbee BO5 第一场2.19
2021/03/10 DOTA
初学Javascript的一些总结
2008/11/03 Javascript
JS定时器实例详细分析
2013/10/11 Javascript
js二维数组排序的简单示例代码
2014/01/24 Javascript
require.js的用法详解
2015/10/20 Javascript
实例代码详解jquery.slides.js
2015/11/16 Javascript
详解JavaScript基本类型和引用类型
2015/12/09 Javascript
微信小程序 wxapp内容组件 progress详细介绍
2016/10/31 Javascript
微信小程序 支付后台java实现实例
2017/05/09 Javascript
vue使用监听实现全选反选功能
2018/07/06 Javascript
解决vue单页路由跳转后scrollTop的问题
2018/09/03 Javascript
[02:17]2016国际邀请赛中国区预选赛VG战队领队采访
2016/06/26 DOTA
Pyhton中单行和多行注释的使用方法及规范
2016/10/11 Python
pandas多级分组实现排序的方法
2018/04/20 Python
python实现多层感知器
2019/01/18 Python
django 中使用DateTime常用的时间查询方式
2019/12/03 Python
Python中 Global和Nonlocal的用法详解
2020/01/20 Python
了解一下python内建模块collections
2020/09/07 Python
中东奢侈品市场:Coveti
2019/05/12 全球购物
巴西补充剂和维生素购物网站:Natue
2019/06/17 全球购物
加拿大著名的奢侈品购物网站:SSENSE(支持中文)
2020/06/25 全球购物
大学生学习党课思想汇报
2014/01/03 职场文书
职工运动会邀请函
2014/02/02 职场文书
环保建议书300字
2014/05/14 职场文书
消防宣传口号
2014/06/16 职场文书
管理标语大全
2014/06/24 职场文书
运动会演讲稿100字
2014/08/25 职场文书
太行山上观后感
2015/06/05 职场文书
财务管理制度范本
2015/08/04 职场文书
Nginx tp3.2.3 404问题解决方案
2021/03/31 Servers