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(AJAX)解析XML的代码(兼容FIREFOX/IE)
Jul 11 Javascript
JQuery中层次选择器用法实例详解
May 18 Javascript
jQuery实用技巧必备(上)
Nov 02 Javascript
jquery及js实现动态加载js文件的方法
Jan 21 Javascript
seajs学习之模块的依赖加载及模块API的导出
Oct 20 Javascript
jQuery实现文字自动横移
Jan 08 Javascript
JS实现中文汉字按拼音排序的方法
Oct 09 Javascript
vue.js提交按钮时进行简单的if判断表达式详解
Aug 08 Javascript
Vue中常用rules校验规则(实例代码)
Nov 14 Javascript
JS面向对象编程基础篇(二) 封装操作实例详解
Mar 03 Javascript
jQuery 移除事件的方法
Jun 20 jQuery
jquery实现异步文件上传ajaxfileupload.js
Oct 23 jQuery
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
风格模板初级不完全修改教程
2006/10/09 PHP
php加密解密实用类分享
2014/01/07 PHP
yii2学习教程之5种内置行为类详解
2017/08/03 PHP
javascript中的几个运算符
2007/06/29 Javascript
通过JS 获取Mouse Position(鼠标坐标)的代码
2009/09/21 Javascript
javascript Keycode对照表
2009/10/24 Javascript
根据鼠标的位置动态的控制层的位置
2009/11/24 Javascript
读jQuery之十三 添加事件和删除事件的核心方法
2011/08/23 Javascript
JS实现让访问者自助选择网页文字颜色的方法
2015/02/24 Javascript
javascript判断css3动画结束 css3动画结束的回调函数
2015/03/10 Javascript
动态加载js、css的简单实现代码
2016/05/26 Javascript
JavaScript中0和&quot;&quot;比较引发的问题
2016/05/26 Javascript
浅谈jquery高级方法描述与应用
2016/10/04 Javascript
JQuery form表单提交前验证单选框是否选中、删除记录时验证经验总结(整理)
2017/06/09 jQuery
vue2.0 和 animate.css的结合使用
2017/12/12 Javascript
Node.JS循环删除非空文件夹及子目录下的所有文件
2018/03/12 Javascript
VeeValidate在vue项目里表单校验应用案例
2018/05/09 Javascript
JS实现字符串中去除指定子字符串方法分析
2018/05/17 Javascript
原生js实现抽奖小游戏
2019/06/27 Javascript
在Vuex中Mutations修改状态操作
2020/07/24 Javascript
[55:42]VG vs VGJ.T 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
github配置使用指南
2014/11/18 Python
python选择排序算法实例总结
2015/07/01 Python
python读取oracle函数返回值
2016/07/18 Python
Python输出带颜色的字符串实例
2017/10/10 Python
机器学习10大经典算法详解
2017/12/07 Python
python实现拼图小游戏
2020/02/22 Python
自定义Django Form中choicefield下拉菜单选取数据库内容实例
2020/03/13 Python
Xadmin+rules实现多选行权限方式(级联效果)
2020/04/07 Python
Python中pass的作用与使用教程
2020/11/13 Python
三分钟演讲稿范文
2014/04/24 职场文书
党的群众路线教育实践活动总结报告
2014/07/03 职场文书
2014年党员自我剖析材料
2014/10/07 职场文书
2015年教学工作总结
2015/04/02 职场文书
2016年植树节红领巾广播稿
2015/12/17 职场文书
Windows Server 2012 R2服务器安装与配置的完整步骤
2022/07/15 Servers