welefen的随笔

标签存档: chrome

音乐电台chrome插件发布2.0版本

IN:前端开发, 浏览器插件   标签: , , , , , , , , ,    评论: 34

音乐电台是一款支持百度听、豆瓣电台、酷狗电台、虾米电台、酷我电台、乐酷电台、多米音乐、音悦电台、亦歌电台、人人电台、一首歌电台、百度音乐盒、搜狗音乐盒、Google音乐盒等14种电台的chrome插件,该插件已经放到chrome web store里,目前已经有700名安装用户。

通过收集大家的一些反馈,发现播放模式和选项不是太好用。最近对这块进行了重新的规划,周末在家将代码进行了完整的重构和升级,将版本升级到2.0。升级的功能如下:

继续阅读 »

08-16
2011

sdch: chrome支持的新HTTP传输压缩算法

IN:前端开发   标签: , , , , ,    评论: 3

概述

我们知道,为了加快网络传输,一般都使用gzip对文本进行压缩。如果你现在用最新版的chrome去访问页面,然后打开network控制面板,查看http headers,细心的你会发现在Request Headers里的Accept-Encoding不再是gzip,deflate,而是多了个sdch,变成了gzip,deflate,sdch。如图:

sdch

继续阅读 »

08-12
2011

pjax:ajax和pushState结合的js库

IN:前端开发   标签: , , , , , , , , ,    评论: 6

上篇文章讲到如何使用ajax+pushState打造无刷新改变URL的方式。虽然这种方式是将ajax、history.pushState、history.replaceStatte、window.onpopstate等几个技术点结合,但在具体使用中还是要考虑到很多情况的,如:

1、改变内容的时候也要改变title

2、不支持的浏览器如何处理

3、事件如何绑定,是否使用了delegate模式

4、ajax异常处理

5、ajax前后的自定义事件等

介于有上面等多的疑问,将ajax和pushState封装下,供后面使用还是非常有帮助的。本文就是对pjax(ajax+pushState)的一个介绍

继续阅读 »

07-26
2011

音乐电台chrome插件(包含豆瓣、人人等14个电台)

IN:浏览器插件   标签: , , , , , , , , , , , , , , , , , , ,    评论: 11

问题驱动

自从豆瓣出了豆瓣电台后,电台越来越多,并且也习惯了使用电台来听歌。

之前一直使用百度听,但每次都要去打开,感觉非常麻烦。

查了下对应的浏览器插件,发现都是提供单个的,并且没有百度听。

正好最近对chrome下浏览器插件开发比较感兴趣,所以就开发了音乐电台插件。

插件功能

该插件提供了目前最流行的音乐电台播放,包括:百度听、豆瓣电台、酷狗电台、虾米电台、酷我电台、乐酷电台、多米音乐、音悦电台、亦歌电台、人人电台、百度mp3音乐盒、搜狗音乐盒、Google音乐盒。

在选项中可以选择自己喜欢听的音乐电台。 继续阅读 »

06-19
2011

百度搜藏chrome插件

IN:前端开发, 浏览器插件   标签: , ,    评论: 5

前言

一直都很喜欢使用百度搜藏,虽然功能比较简单,但由于有强大的搜索和分类还是非常不错的。

现在渐渐喜欢上了Linux & chrome下开发和折腾,由于百度搜藏没有提供对应的Chrome插件,导致使用百度搜藏非常的不方便。

并且Firefox的插件在4.0版本中也不好用了。

Chrome插件开发

由于没有其他好的工具来代替,所以只能自己去开发一个chrome插件。

之前由于没有开发过chrome插件的经验,所以先去官方看了一下文档,发现chrome下的插件开发还是非常简单的。

具体的文档可以看这里。

由于功能比较简单,所以只要下面几个文件就可以了。

其中manifest.json的内容如下:

{
  "name": "百度搜藏",
  "version": "1.0",
  "description": "百度搜藏Chrome插件",
  "background_page": "background.html",
  "browser_action": {
    "default_icon": "images/icon1.png",
    "default_title":"添加到百度搜藏"
  },
  "content_scripts": [
    {
      "matches": ["*://*/*"],
      "js": ["soucang.js"]
    }
  ],
  "permissions":["tab", "tabs", "contextMenus"],
   "icons": {
    "16": "images/icon1.png"
  }
}

soucang.js的文件内容如下:

if(location.hash == '#nw=1'){
	window.addEventListener('unload', function(){
		chrome.extension.sendRequest({winclose:1}, function(response) {
		  //console.log(response.farewell);
		});
	}, false);
}
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
	sendResponse({
		title:document.title,
		url:location.href
	});
});

backgroud.html文件内容中js部分如下:

var stoname = 'soucangcount';
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
	if(request.winclose == 1){
		var count = localStorage.getItem(stoname) | 0;
		if(count < 1) count = 1;
		localStorage.setItem(stoname, count-1);
		return true;
	}
});
function add(){
	var count = localStorage.getItem(stoname) | 0;
	if(count >= 2){
		window.alert("不要打开太多的窗口");
		return false;
	}
	chrome.tabs.getSelected(null, function(tab) {
		chrome.tabs.sendRequest(tab.id, {welefen: "suredy"}, function(response) {
			var u ='http://cang.baidu.com/do/add?it='+encodeURIComponent(response.title)+'&iu='+encodeURIComponent(response.url)+'&fr=ien#nw=1';
			localStorage.setItem(stoname, count+1);
			window.open(u, '_blank', 'scrollbars=no,width=600,height=450,left=75,top=20,status=no,resizable=yes');
		});
	});
}
chrome.browserAction.onClicked.addListener(add);
chrome.contextMenus.create({"title": "添加到百度搜藏","onclick":add});

插件下载

点击这里下载插件

安装完成后,如果发现点击图标没有反映,请按下面步骤操作:

工具 -> 首选项 -> 高级选项 -> 隐私权(内容设置)-> 弹出式窗口 -> 添加例外 -> 把soucang.baidu.com 加进去即可。

其他

该插件开发完了最后发现,chrome扩展中心里已经有了百度搜藏的插件了,这个比较囧。但我安装了发现使用不了。不知道是不是我在linux下的原因。

欢迎查看我的百度搜藏

 

06-15
2011

google chrome os

IN:我的生活   标签: , , , , ,    评论: 0

从google发布出chrome os的消息到网上多次泄露,现在chrome os终于和我们见面了。此刻这个神秘的面纱终于揭开了。我们来看看她到底是个什么样子。目前的版本是0.4.207。
从chrome os的介绍页,我们可以知道chrome os是基于linux内核的,但还不知道是基于什么发行版或者是自己重弄个发行版。

你可以从http://sites.google.com/site/chromeoslinux/download下载virtual appliance或者Live CD image。我这里下载的是virtual appliance,准备在VirtualBox中安装。如果你还没有的话,可以从http://www.virtualbox.org/wiki/Downloads下载。下面来看看在VirtualBox中具体的安装过程。

下载后的文件是Chrome_OS.i686-0.4.207.vmx.tar.gz,解压后有两个文件。Chrome_OS.i686-0.4.207.vmdk和Chrome_OS.i686-0.4.207.vmx。

继续阅读 »

09-30
2009
loading...