Firefox 的 Jetpack 扩展案例分析:Gmail 邮件提醒(2)
作者:blank 来源:怿飞博客 发布时间:2009-10-15 12:41:00
我们还可以通过进行一些优化:比如当未读新邮件数大于原来的邮件数时,增加提示信息等。
提示信息这里使用 jetpack.notifications.show(options) 方法,options 参数有三个属性:title (String):通知的标题;icon (URL):通知 icon 的 URL;body (String):通知的主题内容。
优化后的代码如下:
var count = 0;
function update(widget) {
var widget = $(widget),
notify = function(msg) { // 定义通知的公用方法
jetpack.notifications.show({
title: "Gmail",
body: msg,
icon: "http://mail.google.com/mail/images/favicon.ico"
});
};
$.get("https://mail.google.com/mail/feed/atom", function(xml) {
var el = $(xml).find("fullcount"); // 记录未读新邮件数的节点
if(el){
var newcount = parseInt(el.get(0).textContent);
if(newcount > count) { // 如果未读新邮件数大于原来的邮件数,则提示来自哪里
var sender = $(xml).find("name").get(0).textContent;
notify("New message from "+sender);
}
count = newcount;
widget.find("#count").text(count); //赋给指定的元素
} else { //如果未登录,提示登录
widget.find("#count").text( "Login" );
notify("Please login to Gmail");
}
});
}
第三步:设置定时更新数据。
我们设置每 1 分钟更新一次数据:
setInterval( function() { update(widget) }, 60*1000 );
第四步:设置点击扩展后的链接窗口。
$(widget).click(function() { //设置点击扩展后的链接窗口
jetpack.tabs.open("http://mail.google.com");
jetpack.tabs[ jetpack.tabs.length-1 ].focus();
});
jetpack.tabs 为浏览器窗口的标签对象,.open(url) 为新打开浏览器窗口标签的方法,.focus()为选中此标签为当前标签的方法。
OK,Firefox 的 Jetpack 扩展——Gmail 邮件提醒,经过简单的四步轻松完成。


猜你喜欢
- 本文实例讲述了JS获取网页图片name属性的方法。分享给大家供大家参考。具体如下:下面的JS代码可以用来获取网页图片的name属性<!
- 本文实例讲述了CodeIgniter自定义控制器MY_Controller用法。分享给大家供大家参考,具体如下:Codeigniter所有的
- 导语:哈喽,哈喽~小编不知道你有没有经历过,想联系一位很长时间没有联系的朋友,发现对方很早以前已经把你删除了,而你还一无所知。反正小编经历过
- 前言最近在项目中需要输出彩色的文字来提醒用户,以前写过,但是只能在win上面运行。今天搜了下看有没有在win和Linux上通用的输出彩色文字
- 问题在使用matplotlib作图的时候,有的时候会遇到画图时坐标轴重叠,显示不全和图片保存时不完整的问题。如下:解决方案画图时重叠或者显示
- 本文实例为大家分享了python实现某考试系统生成word试卷的具体代码,供大家参考,具体内容如下提示:写完文章后,目录可以自动生成,如何生
- 反射简介Go语言的反射是通过reflect包提供的,它允许我们在运行时访问接口的动态类型信息和值。其基本的操作包括获取一个类型的Kind(例
- 目录深度遍历递归用栈来遍历磁盘广度遍历磁盘用队列遍历磁盘深度遍历递归import osdef get_files(path):
- Python爬虫、数据分析、网站开发等案例教程视频免费在线观看https://space.bilibili.com/523606542Sel
- 任务背景:调用API接口数据,抽取我们所需类型的数据,并写入指定mysql数据库。先从宏观上看这个任务,并对任务进行分解:step1:需要学
- 系统版本: CentOS 7.4Python版本: Python 3.6.1在现在的WEB中,为了防止爬虫类程序提交表单,图片验证码是最常见
- <form name="frm"><select name=school onchange="
- 如下所示:<strong><span style="font-size:14px;">文本过滤&
- 一、题目要求用原生Python实现knn分类算法。二、题目分析数据来源:鸢尾花数据集(见附录Iris.txt)数据集包含150个数据集,分为
- 1. 预估执行计划 - Explain PlanExplain plan以SQL语句作为输入,得到这条SQL语句的执行计划,并将执行计划输出
- 在前一文中记述了Access启动不了,或者出现“正在准备安装……”的问题,今天则找到了Access对控件支持的问题。本来Access、Exc
- 两张表 组织架构表(Organise) 和 工资发放历史记录表 (WagePerMonthHis) 两张表通过 Organise.Item_
- <style> #L { position:absolute; color:
- key_len的含义在MySQL中,可以通过explain查看SQL语句所走的路径,如下所示:mysql> create table
- 你不可能随时备份数据,但你的数据丢失时,或者数据库目录中的文件损坏时, 你只能恢复已经备份的文件,而在这之后的插入或更新的数据,就无能为力了