手动编写google工具栏按钮

5月 25, 2008 – 2:00 下午

google工具栏安装率越来越高,也越来越多的第三方开发者为google工具栏开发按钮,功能多种多样,你想试一下吗?。google工具栏按钮开发起来简单易行,具备基本编程知识人就可以自己定制。
follow me!

1.开发工具:

1).任何文本编辑工具
2)给你的浏览器装一个google工具条作为调试环境

2.关键节点名称

1)title:站点名称
2)description:站点描述
3)site: 站点url
4)search: 搜索的url,比如: http://re.xianguo.com/search?keyword={query}
5)send: 以search差不多,当google搜索栏中没有字符串时,可用{selection}取得搜索参数
6)icon: 工具栏按钮的图片值一般为base64编码后的值
7)feed: 联合供稿的url
8)feed-icon: 当feed有新的内容的时候会换成一个新的icon,当打开下拉框的时候就返回原来的默认图标
9)feed-description:当feed有新的内容时工具栏提示
11)update: 更新按钮的xml
12)option:用来对按钮进行设置,可以在工具栏设置里面修改.其子元素有title,description,default

3.关键变量

1){query}:当前的工具栏搜索框中的值
2){url}:浏览器的地址字段所指向的地址
3){url.host}:url的host
4){url.noescape}:没有进行过编码的url值
5){domain}:指向的google搜索域:例如com ,co.uk
6){locale}:本地化版:例如:en、es 和 pt-BR
7){selection}:浏览器的所选择的纯文本
8){option1}:变量值

4.实例练习

1)新建一个xml文件

  1. <?xml version="1.0"?>
  2. <custombuttons xmlns="http://toolbar.google.com/custombuttons/">
  3.   <button>
  4.     <search method="post" charset="utf-8">http://re.xianguo.com/search?keyword={query}</search>
  5.     <site>http://www.xianguo.com/</site>
  6.     <title>鲜果</title>
  7.     <description>鲜果热文</description>
  8.     <icon>
  9. AAABAAIAEBAAAAEACABoBQAAJgAAABAQAAABACAAaAQAAI4FAAAoAAAAEAAAACAAAAABAAgAAAAA
  10. AAABAAAAAAAAAAAAAAABAAAAAQAAAAAAAHhtZAB+dnIApW1eAKOOfwAGD5oACwyeACInmgADBacA
  11. Bw+lAAUQrwAFD7QAAhC0AAsctQAFEbwAChO+AA0dvAALJ7MAHCm1AB9iuABZW5wAQGWeAAgJwgAD
  12. CckACBHIAAgJ1AANDtoADRHQAAcc3AAbG9YAExDZABMhzQALLdgAEyHUABMw2AAgM8EADBvhAAsg
  13. 6AAEKe0ACS7oAAkv7AAeJOoAESvrABgw7gAeMvIAHTnxABg+8wAmLO0AJT7vADAx7gAhNfIAJzzy
  14. ACg88wAYX9AAL07RADFT1AAtaskAJmHXACN53AAyddIAEFzvABlA8wAdR/QAG073AAtT8QAGXPcA
  15. FlT1AB1Y9QAjTvUAN0v1AAZr/gAGd/kAIGv7AClt+QA9avcAIHD6ACZ++wAoefoAWFjzAF1m8gBA
  16. e/YAWHr1AGlk7gBxevEAdoitAHqOrQA1sNIAPLjYAAyM/gANlvYAD5X+AA6Z/gAQmf0ANZfoADyb
  17. 6gA9h/QANI77AD2I+gA6kvsAD6//ABak/QAdpfgAF7H+ADCu6wA5su4AKKD7AESH+QBKl/QASZX7
  18. AF+S9wBOuOUAV7biAFSn/ABcpfwAQbr2AFaw9gBTsPoAY7/sAGi8+gAVwv8AEMb+ABvF+wAI0P8A
  19. Cdf/ADbD/ABw4ssARsf8AEXL/ABSxf0Ad87+AHzI/AB54f0ArqKbAMSliwDVybwA48m6AO3QvgCV
  20. kvcAks3AAJXQ5gCBwPIAis/5AInW+gCc1v0Anuv9AKHr/ACq6v0Ap/D+AP7gxAD86doAzfH9ANn5
  21. /gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  22. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  23. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  24. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  25. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  26. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  27. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  28. AAAAAAAAAAAAAAAAAAAA////AAAAABIKCQUFEQAAAAAAAAAAAAYIFhshIg4MFQAAAAAAACMXGikv
  29. MU5TIAtUAAAAAAAQJzA0MiwvTokfDQAAAAA2UUhQSkQ9LTNPUhgUAAAAN21pbGpJQz0tRVMdBwAA
  30. AF+MfnZxYU1DPS0zHg9VAABrjZKRgnBiS0I+KxkcQRMAXY6Wl5B8dGBIQyoZPGRGOYtzj5aTg39p
  31. TD4kJWZ3WjUAdXSBgHllR0AmKFl7d1s6AAAAV2hyXjg7XHd6emNYbwAAAAAAlYcDAAB9ilZuZwAA
  32. AAAAAACUhQAAAAAAAAAAAAAAAAAAAIgEAQAAAAAAAAAAAAAAAAAAhgKEAAAAAADgfwAAwB8AAIAP
  33. AACADwAAAAcAAAAHAAAAAwAAAAEAAAAAAAAAAAAAgAAAAOAAAAD4wQAA/P8AAP4/AAD/HwAAKAAA
  34. ABAAAAAgAAAAAQAgAAAAAABABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtpemGwgWr+oFEK//
  35. Bw+l/wYPm/8GD5n/Cyez/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsMnv8D
  36. Baf/CAnC/w0R0P8TIdT/EzDY/wURvP8CELT/QGWe/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAz
  37. wf8DCcn/DQ7a/x4k6v8mLO3/MDHu/1hY8/9xevH/Cy3Y/wUPtP92iK3/AAAAAAAAAAAAAAAAAAAA
  38. AAAAAAANHbz/CS7o/yU+7/8oPPP/IDTy/x4y8v8iKu//X2Dz/5WS9/8TIc3/Cxy1/wAAAAAAAAAA
  39. AAAAAAAAAAAvTtH/WHr1/yBr+/9Ae/b/PWr3/yNO9f8ZQPP/HTnx/yI28v9dZvL/aWTu/wgRyP9Z
  40. W5z/AAAAAAAAAAAAAAAAMVPU/1+S9/8ooPv/SZX7/0SH+f8pbfn/HVj1/xtF9P8YPvP/N0v1/3B5
  41. 9P8bG9b/Iiea/wAAAAAAAAAAAAAAAD2H9P+BwPL/Rsf8/2i8+v9cpfz/PYj6/yh5+v8YWPb/GkP0
  42. /x068f8nPPL/ExDZ/woTvv96jq3/AAAAAAAAAABKl/T/is/5/6rq/f+h6/z/fMj8/1Sn/P86kvv/
  43. IHD6/xZU9f8dR/T/GDDu/wgJ1P8HHNz/Blz3/x9iuP8AAAAANZfo/4nW+v/M8P3/2fn+/57r/f82
  44. w/z/U7D6/zSO+/8gbfj/HF34/xEr6/8KDNb/EFzv/xak/f8Ga/7/JmHX/4zM5OtWsPb/nNb9/87z
  45. /f+n8P7/eeH9/0XL/P8qp/v/Jn77/xtO9/8MG+H/CyDo/xex/v8Vwv//D5X+/xhf0P8AAAAAY7/s
  46. /1a3/v93zv7/UsX9/xvF+/8dpfj/Bnf5/wtT8f8EKe3/CS/s/w2W9v8J1///FL///w6Z/v8jedz/
  47. AAAAAAAAAAAAAAAAPLjY/zmy7v9Buvb/PJvq/y1qyf8yddL/EJn9/xDG/v8J0P//CND//w+v//8M
  48. jP7/V7bi/wAAAAAAAAAAAAAAAAAAAAAAAAAA/Ona/+PJuv+lbV7/AAAAAAAAAABw4sv/ks3A/zWw
  49. 0v9OuOX/MK7r/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+4MT/xKWL/wAAAAAAAAAAAAAA
  50. AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO3Qvv+jjn//
  51. eG1k/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  52. AAAA1cm8/352cv+uopv/AAAAAAAAAAAAAAAAAAAAAAAAAADAfwAAwB8AAIAPAACADwAAAAcAAAAH
  53. AAAAAwAAAAEAAAAAAAAAAAAAgAAAAOAAAAD4wQAA/P8AAP4/AAD/HwAA
  54.     </icon>
  55.   </button>
  56. </custombuttons>

2.保存位置

C:\Documents and Settings\username\Local Settings\Application Data\Google\Custom Buttons\filename.xml

3.重新启动浏览器,就可以看到工具栏上面多出了一个鲜果的搜索按钮

4.为此按钮扩展新功能:

1)添加 RSS 联合供稿,以xml文章中加入

  1. <feed refresh-interval="1800">http://www.guogoul.com/feed</feed>

refresh-interval:更新频率,以秒为单位
2)修改feed的显示,为按钮变更通知

  1. <feed menu="false" refresh-interval="900">http://get/feeds/file/in/your/server</feed>

menu=false表示取消下拉列表显示.用2)的代码代替1)的代码

服务器端的xml代码(http://get/feeds/file/in/your/server):

  1. <?xml version='1.0'?>
  2. <feed xmlns='http://www.w3.org/2005/Atom'
  3.     xmlns:gtb='http://toolbar.google.com/custombuttons/'>
  4. <id>http://get/feeds/file/in/your/server</id>
  5.  
  6. <title>Mood</title>
  7. <link href='http://www.google.com/search?q=+ring' />
  8. <link rel='self'
  9.     href='http://get/feeds/file/in/your/server' />
  10. <gtb:description>your description</gtb:description>
  11. <gtb:icon mode="base64" type="image/x-icon">
  12. AAAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAwAAAAMAA
  13. AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAA
  14. AAAAAAAAAAAGAAAAHAAAAEAAAABhAAAAcwAAAHQAAABpAAAAVQAAAD4AAAApAAAAGAAAAAoAAAAD
  15. AAAAAQAAAAAAAAAAAAAAESZIXl4zdJvAXbHS8m3C3f9LnrrLFUtsmwILEX4AAABzAAAAYQAAAEcA
  16. AAAqAAAAEwAAAAcAAAACAAAAACs9RTNOjrDtW6nS/53u/f+n/P//hej//2bP/P9Fq93wHGaNrxEv
  17. O4kAAAB6AAAAXwAAADwAAAAfAAAADAAAAANihaWST6XK/0h/kcAdKCyWKTtAgVJ/kIhytNKse873
  18. 9E+w6v9RuN39SXuJpgQHCIoAAAB2AAAAUQAAACsAAAAPb6nU7mK65v9jqs76KkNPqAUICJoAAACE
  19. AAAAaxUgJWBkrMiwsvv+//D+/v+y1NniIj1FnAAAAIgAAABcAAAALHS74PV1zPn/c835/1Oezv9N
  20. iq7vNVRjrxUiJ5kBAgORAQICh3uLjZz3+vr1+f///4PL5/wvVmusAAAAigAAAFNyu+TPdtL8/0Cp
  21. 7v8ng8X/CFOH/ytpjv86gJ//R46z+Th6jsovVmCsd56pxNf2/f9TuPH/W7fs/ypGV6UAAAByf77Y
  22. r02y7P9Zwfb/puH3/y+AtP8jZ5f/KWKH/0p7hP+ZrVr/zcUt/9vMKf/bzSz/tsBP/3OzrP9kl7Pp
  23. AAAAgHGdpThatuT/0fn+//b///+V0uv/NICu/4mvfP/czjL/3M0v/9rMKP/dzzT/3c83/9vNLf/b
  24. zS//nrWA/gAAAIMAMzMFbrrd2d/+///5////t+n6/4q6nf/czzX/3tA+/97QPf/czjP/3dA7/97R
  25. Qv/czjD/3M4z/9DHLPoAAAB/AAAAAWShtUix5+//5v7+/5Hf7//Bvjn/3M0v/9/SSP/g1FL/39RR
  26. /+DVWv/e0kf/3tFA/9zNL//bzCj/AAAAbwAAAAAAAAADcq7Fmpzo8f9rsL3/2ssl/93POf/f0kj/
  27. 49pu/+ffhP/q45b/49pp/97SSv/czS//yb0q4wAAAE8AAAAAAAAAAF54hhNrq77BXpCj/7+7Of/c
  28. zjH/3tFH/+bdeP/w7cv/9PLa/+zlnf/g1VP/1so5/mBfJHsAAAArAAAAAAAAAAAAAAABa5GgIHWs
  29. t/dymG3/3tE//9/UUv/o4Ij/9PHT//v67P/v6a3/08xY/3uMX6UAAAAuAAAAEAAAAAAAAAAAAAAA
  30. AAAAAAKSvb9YSoWa+WyagP+wv2X/4NRO/+ngfv/m4Zf/rLeB+lpubIkAAAAlAAAADgAAAAMAAAAA
  31. AAAAAAAAAAAAAAAAAAAAAoqvuDxkkp2gYo+c51mHkv9lk5v/Y4eNtlBfaEgAAAAWAAAACQAAAAIA
  32. AAAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAwAAAAMAA
  33. AADgAAAA8AEAAA==
  34. </gtb:icon>
  35.  
  36. </feed>

当你需要改变工具栏按钮通知的时候改变icon的内容就可以,.还有工具栏tooltip会用gtb:description代替

以上只是介绍了按钮的基本的创建方式以及一些基本的扩展,想要更加强大的功能请认真阅读 官方文档