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 相关文章推荐
extjs DataReader、JsonReader、XmlReader的构造方法
Nov 07 Javascript
Javascript开发之三数组对象实例介绍
Nov 12 Javascript
调试代码导致IE出错的避免方法
Apr 04 Javascript
ECMAScript 5中的属性描述符详解
Mar 02 Javascript
JSON字符串转JSON对象
Jul 31 Javascript
JavaScript字符串对象
Jan 14 Javascript
使用Vue的slot插槽分发父组件内容实现高度复用、更加灵活的组件(推荐)
May 01 Javascript
vue源码nextTick使用及原理解析
Aug 13 Javascript
解决三元运算符 报错“SyntaxError: can''t assign to conditional expression”
Feb 12 Javascript
Vue常用的全选/反选的示例代码
Feb 19 Javascript
微信小程序实现转盘抽奖
Sep 21 Javascript
JS前端可扩展的低代码UI框架Sunmao使用详解
Jul 23 Javascript
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
《魔兽争霸3:重制版》翻车了?你想要的我们都没有
2019/11/07 魔兽争霸
如何阻止网站被恶意反向代理访问(防网站镜像)
2014/03/18 PHP
PHP+jQuery 注册模块开发详解
2014/10/14 PHP
[原创]php逐行读取txt文件写入数组的方法
2015/07/02 PHP
laravel migrate初学常见错误的解决方法
2017/10/11 PHP
thinkPHP5框架中widget的功能与用法详解
2018/06/11 PHP
基于php伪静态的实现方法解析
2020/07/31 PHP
jQuery ui1.7 dialog只能弹出一次问题
2009/08/27 Javascript
jquery 应用代码 方便的排序功能
2010/02/06 Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
2013/04/17 Javascript
javascript模拟枚举的简单实例
2014/03/06 Javascript
jQuery实现宽屏图片轮播实例教程
2015/11/24 Javascript
js实现遍历含有input的table实例
2015/12/07 Javascript
学习JavaScript设计模式之享元模式
2016/01/18 Javascript
通过隐藏iframe实现无刷新上传文件操作
2016/03/16 Javascript
返回函数的JavaScript函数
2016/06/14 Javascript
学习使用jQuery表单验证插件和日历插件
2017/02/13 Javascript
基于angular实现模拟微信小程序swiper组件
2017/06/11 Javascript
深入解析Vue 组件命名那些事
2017/07/18 Javascript
解决vue的 v-for 循环中图片加载路径问题
2018/09/03 Javascript
基于Vue中使用节流Lodash throttle详解
2019/10/30 Javascript
es6数组之扩展运算符操作实例分析
2020/04/25 Javascript
ES6使用新特性Proxy实现的数据绑定功能实例
2020/05/11 Javascript
python实现机器人行走效果
2018/01/29 Python
Flask框架Flask-Login用法分析
2018/07/23 Python
解决pycharm无法识别本地site-packages的问题
2018/10/13 Python
python剪切视频与合并视频的实现
2020/03/03 Python
Python-openpyxl表格读取写入的案例详解
2020/11/02 Python
Stuart Weitzman美国官网:美国奢华鞋履品牌
2016/08/18 全球购物
往来会计岗位职责
2013/12/19 职场文书
元旦联欢会主持词
2014/03/26 职场文书
奉献家乡演讲稿
2014/09/16 职场文书
践行三严三实心得体会
2014/10/13 职场文书
2014年度工作总结报告
2014/12/15 职场文书
南极大冒险观后感
2015/06/05 职场文书
SpringBoot Http远程调用的方法
2022/08/14 Java/Android