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 邮件提醒,经过简单的四步轻松完成。
猜你喜欢
- 方法一、尽量使用复杂的SQL来代替简单的一堆 SQL.同样的事务,一个复杂的SQL完成的效率高于一堆简单SQL完成的效率。有多个查询时,要善
- 大多数网站维护都采用“多人协作,共同管理”方式。某个人负责一个(或者多个)栏目,他只能对他负责的栏目进
- 原文:Unobtrusive Ajax。今天才看见的一个Presentation,是Jesse Skinner在06年10月发表的。虽然题目
- 1、选取最适用的字段属性MySQL 可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建
- 因客户需求,要把数据库里的索引编号做成五位长度的,且能自动累加编号,我只会在SQL中使用Identity自动编号:Create Table
- 操作实现函数: 代码如下:Function AddWater(n) Set Photo = 
- 作为一名网站开发WEB前端工程师,对自己开发的网站项目应该尽可能地对其性能进行优化,现在互联网上搜索到的网站性能优化多是翻译转载自 Yaho
- Mr.Think是一个喜欢简洁的人,喜欢如诗一样的代码.不喜欢.NET的代码,就是因为经常看到同事用VS后生成出来的一段段冗长的代码.在我的
- CSS样式和JavaScript脚本是应该放在外部文件中呢?还是把它们放在页面本身之内呢?如何处理是关于一些性能规则的思维,就这些问题,我们
- 1. 停应用层的各种程序。 2. 停oralce的监听进程: $lsnrctl stop 3. 在独占的系统用户下,备份控制文件: SQL&
- 本文介绍如何建立基于Web的日历,同时为不熟悉Active Server Pages(ASP)、SQL和ADO的开发者提供建立Web站点的过
- 主要使用IE各个阶段实现的一些方法,从中也可以看出IE的发展史。暂时提供到IE4的判定。var isIE = window.ActiveXO
- 在处理css的机制上,IE总是有很多让人吐血的举动,但对于他们现在的改进力度还是值得高兴的。就拿对伪类:hover的支持来说,IE7+终于添
- 类、构造函数、原型先来说明一点:在上面的内容中提到,每一个函数都包含了一个prototype属性,这个属性指向了一个prototype对象(
- (1)Flush的内容至少要有256字节经过反复的测试,我得出一个结论。就是flush的内容至少要有256字节。也就是只有编译产生了至少25
- 最近在着手支付宝个人版改版的项目,正好在一些国内知名的SNS网站上分别注册了帐户进行体验。显然一点,国内的SNS都带有Facebook的影子
- 脚本调试第一步:设置中断(鼠标左键点击)第二步:输入中断条件(可选功能,鼠标右键点击红点)第三步:触发中断(当符合条件是,中断被触发)出现中
- 从PJBlog 2.7开始,验证码的功能就很好很强大了,但是同时也给手工输入带来了不小的麻烦——经常输错。之前我写了一个《自己写的一个PJB
- 我们平日办公时用得最多的软件是Execl、Word或WPS Office等,你的计算机中一定储存着大量的XLS、DOC、WPS文件吧!网页制
- 1.指向“开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server 外