js实现网页标题栏闪烁提示效果实例分析


Posted in Javascript onNovember 20, 2014

本文实例讲述了js实现网页标题栏闪烁提示效果的方法。分享给大家供大家参考。具体分析如下:

网页标题栏闪烁效果我们在一些聊天工具会常看到,像现在流量的聊天室,下面我们就来给大家总结一款实现网页标题栏闪烁提示代码,感兴趣可参考一下。

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

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();

看了上面代码自己再进行优化一下,不管怎样,自己能吸收学习到就好了。:)我主要是觉得他代码里面 newMessageRemind 这字段用得太多了,看起来密密麻麻的,多不舒服啊,想着换一种小清新的方式展现出来,于是乎就有了下面的代码:

var newMessageRemind = function () { 
  var i = 0, 
    title = document.title, 
    loop; 
 
  return { 
    show: function () { 
      loop = setInterval(function () { 
        i++; 
        if ( i == 1 ) document.title = '【新消息】' + title; 
        if ( i == 2 ) document.title = '【 】' + title; 
        if ( i == 3 ) i = 0; 
      }, 800); 
    }, 
    stop: function () { 
      clearInterval(loop); 
      document.title = title; 
    } 
  }; 
} ();

是不是清新了很多呢?^_^

<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>放假啦!!!</title>
</head>
<body>
<button id="test">stop</button>
<script type="text/javascript">
var newMessageRemind = function () {
 var i = 0,
 title = document.title,
 loop;
 return {
 show: function () {
  loop = setInterval(function () {
  i++;
  if ( i == 1 ) document.title = '【新消息】' + title;
  if ( i == 2 ) document.title = '【 】' + title;
  if ( i == 3 ) i = 0;
  }, 800);
 },
 stop: function () {
  clearInterval(loop);
  document.title = title;
 }
 };
} ();
newMessageRemind.show();
document.getElementById('test').onclick = function () {
 newMessageRemind.stop();
};
</script>
</body>
</html>

继续分享一个

<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>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
JS命名空间的另一种实现
Aug 09 Javascript
自己写的Javascript计算时间差函数
Oct 28 Javascript
jQuery Validate 验证,校验规则写在控件中的具体实例
Feb 27 Javascript
BootStrap中Table分页插件使用详解
Oct 09 Javascript
文件上传插件SWFUpload的使用指南
Nov 29 Javascript
详解webpack babel的配置
Jan 09 Javascript
JavaScript创建对象的四种常用模式实例分析
Jan 11 Javascript
微信小程序之几种常见的弹框提示信息实现详解
Jul 11 Javascript
vue设置一开始进入的页面教程
Oct 28 Javascript
JavaScript中Object、map、weakmap的区别分析
Dec 15 Javascript
15个值得收藏的JavaScript函数
Sep 15 Javascript
Vue 打包后相对路径的引用问题
Jun 05 Vue.js
javascript获取flash版本号的方法
Nov 20 #Javascript
Jquery对象和Dom对象的区别分析
Nov 20 #Javascript
深入理解javascript变量声明
Nov 20 #Javascript
javascript限制用户只能输汉字中文的方法
Nov 20 #Javascript
jQuery 中$(this).index与$.each的使用指南
Nov 20 #Javascript
jQuery提示效果代码分享
Nov 20 #Javascript
IE6浏览器中window.location.href无效的解决方法
Nov 20 #Javascript
You might like
PHP截取指定图片大小的方法
2014/12/10 PHP
php上传图片客户端和服务器端实现方法
2015/03/30 PHP
php实现基于pdo的事务处理方法示例
2017/07/21 PHP
ThinkPHP实现转换数据库查询结果数据到对应类型的方法
2017/11/16 PHP
js 触发select onchange事件代码
2014/03/20 Javascript
node.js中的http.response.writeHead方法使用说明
2014/12/14 Javascript
简述JavaScript中正则表达式的使用方法
2015/06/15 Javascript
详解Node.js包的工程目录与NPM包管理器的使用
2016/02/16 Javascript
jQuery实现页面点击后退弹出提示框的方法
2016/08/24 Javascript
详解nodejs 文本操作模块-fs模块(五)
2016/12/23 NodeJs
JS基于onclick事件实现单个按钮的编辑与保存功能示例
2017/02/13 Javascript
js鼠标跟随运动效果
2017/03/11 Javascript
js实现拖拽上传图片功能
2017/08/01 Javascript
vue中rem的配置的方法示例
2018/08/30 Javascript
vue自动路由-单页面项目(非build时构建)
2019/04/30 Javascript
python练习程序批量修改文件名
2014/01/16 Python
django批量导入xml数据
2016/10/16 Python
Python深入06——python的内存管理详解
2016/12/07 Python
Python实现随机创建电话号码的方法示例
2018/12/07 Python
详解Python3序列赋值、序列解包
2019/05/14 Python
python 获取sqlite3数据库的表名和表字段名的实例
2019/07/17 Python
python中with用法讲解
2020/02/07 Python
TensorFlow2.X使用图片制作简单的数据集训练模型
2020/04/08 Python
使用python求斐波那契数列中第n个数的值示例代码
2020/07/26 Python
小蚁科技官方商店:YI Technology
2019/08/23 全球购物
碧欧泉Biotherm加拿大官方网站:法国高端护肤品牌
2019/10/18 全球购物
传播学毕业生求职信
2013/10/11 职场文书
《绿色蝈蝈》教学反思
2014/03/02 职场文书
项目建议书格式
2014/03/12 职场文书
初三学习计划书范文
2014/04/30 职场文书
领导班子四风问题对照检查材料
2014/09/27 职场文书
出租车拒载检讨书
2015/01/28 职场文书
学校教学工作总结2015
2015/05/19 职场文书
新员工入职感想
2015/08/07 职场文书
2015年物业管理员工工作总结
2015/10/15 职场文书
eclipse创建项目没有dynamic web的解决方法
2021/06/24 Java/Android