好吧,我要开始开始新话题了,javascript。我太不务正业了。。。

Chrome 插件中的pageAction是在地址栏的右侧显示一个标志,最常见的就是chrome自带的收藏功能。
Image Title
相对browserAction,pageAction的区别就是只针对特殊页面有效。最典型的就是Chrome的RSS插件,只会在支持RSS的网页中显示,所以当你的插件只是适用个别页面的话就应该用pageAction了。

最开始是按照google给的sample写的,其中要使用到PageStateMatcher去做url匹配,很可惜我要写插件的网站是单页应用,host域后面就直接是fragment identifier(URL中#号后面的部分),而UrlFilter是不支持(也许是不能或者不应该,不清楚了)fragment identifer。后来看文档中关于message传递的时候才恍然大悟。

正确做法是content_scirpt中去检测当前URL,然后发送消息给你的extension,让其调用pageAction的api去显示。(congten_script不能调用除了chrome.extension.*以外的api)。

代码明天放上来。