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 相关文章推荐
HTML-CSS群中单选引发的“事件”
Mar 05 Javascript
jQuery如何实现点击页面获得当前点击元素的id或其他信息
Jan 09 Javascript
浅谈JavaScript字符集
May 22 Javascript
JavaScript采用递归算法计算阶乘实例
Aug 04 Javascript
微信小程序 swiper组件构建轮播图的实例
Sep 20 Javascript
微信小程序实现的涂鸦功能示例【附源码下载】
Jan 12 Javascript
详解Vue基于 Nuxt.js 实现服务端渲染(SSR)
Apr 05 Javascript
JS实现可视化文件上传
Sep 08 Javascript
vue-cli 打包后提交到线上出现 &quot;Uncaught SyntaxError:Unexpected token&quot; 报错
Nov 06 Javascript
vue组件间的参数传递实例详解
Apr 26 Javascript
微信小程序实现上传word、txt、Excel、PPT等文件功能
May 23 Javascript
JS轮播图的实现方法
Aug 24 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 rawurlencode与urlencode函数的深入分析
2013/06/08 PHP
ThinkPHP使用心得分享-分页类Page的用法
2014/05/15 PHP
php类自动加载器实现方法
2015/07/28 PHP
PHP微信API接口类
2016/08/22 PHP
php swoft框架实例用法
2020/12/22 PHP
js no-repeat写法 背景不重复
2009/03/18 Javascript
ASP.NET中使用后端代码注册脚本 生成JQUERY-EASYUI的界面错位的解决方法
2010/06/12 Javascript
js动画效果制件让图片组成动画代码分享
2014/01/14 Javascript
基于Jquery+Ajax+Json实现分页显示附效果图
2014/07/30 Javascript
javascript中闭包(Closure)详解
2016/01/06 Javascript
js事件冒泡、事件捕获和阻止默认事件详解
2016/08/04 Javascript
xmlplus组件设计系列之按钮(2)
2017/04/26 Javascript
微信小程序之页面跳转和参数传递的实现
2017/09/29 Javascript
JS中offset和匀速动画详解
2018/02/06 Javascript
Java设计中的Builder模式的介绍
2018/03/22 Javascript
详解Vue文档中几个易忽视部分的剖析
2018/03/24 Javascript
AngularJS自定义过滤器用法经典实例总结
2018/05/17 Javascript
[02:08:58]2014 DOTA2国际邀请赛中国区预选赛 Ne VS CIS
2014/05/22 DOTA
[45:10]NB vs Liquid Supermajor小组赛 A组胜者组决赛 BO3 第二场 6.2
2018/06/04 DOTA
python实现数通设备tftp备份配置文件示例
2014/04/02 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
2017/10/11 Python
Python给定一个句子倒序输出单词以及字母的方法
2018/12/20 Python
django 使用全局搜索功能的实例详解
2019/07/18 Python
详解python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'如何解决
2019/08/27 Python
Python爬虫之Selenium警告框(弹窗)处理
2020/12/04 Python
Python实现一个论文下载器的过程
2021/01/18 Python
Hunter Boots美国官方网站:赫特威灵顿雨靴
2018/06/16 全球购物
中国茶叶、茶具一站式网上购物商城:醉品茶城
2018/07/03 全球购物
C#面试问题
2016/07/29 面试题
偷看我的初中毕业鉴定
2014/01/29 职场文书
面试后感谢信怎么写
2014/02/01 职场文书
海飞丝的广告词
2014/03/20 职场文书
环保倡议书300字
2014/05/15 职场文书
关爱留守儿童标语
2014/06/18 职场文书
商务英语专业求职信
2014/06/26 职场文书
帮你提高开发效率的JavaScript20个技巧
2021/06/18 Javascript