Random Tech Thoughts

The title above is not random

InstapaperBookmarklet 及 Safari 扩展推荐

Update 2013-04-20: 原先的名字 InstapaperBookmark 容易误解成只是添加一个书签,现在改名为 InstapaperBookmarklet。

写了个 Safari 扩展 InstapaperBookmarklet,在工具栏添加一个按钮来执行 Instapaper bookmarklet。如果当前标签是空白页面的话点击会访问 Instapaper 网站。

如果你跟我一样使用 SafariTabSwitching 这个基于 SIMBL 的插件(实现 cmd+num 切换标签页),习惯隐藏书签栏,又喜欢官方 bookmarklet 的视觉反馈,那么可以试试看这个扩展。

Safari 上其实有很多不错的扩展。canisbos.com 这个网站上有很多,我目前使用如下几个:

  • gDirectLinks 移除 Google 搜索结果中的跳转 URL,这样 Safari 记录的历史记录更有意义
  • QuickStyle 比 Stylish 方便多的定制网页 css 的工具
  • PopSearch 添加自定义搜索引擎
  • QuickScript 在网页中执行任意的 JavaScript,InstapaperBookmarklet 就可以用这个实现,不过不能添加专用按钮,要多点击几次鼠标
  • CustomReader Safari Reader 的效果远比 Chrome 扩展实现的效果好,这个扩展可以定制 Safari Reader 的背景色、字体等

其他推荐扩展:

  • AdBlock 注明的拦广告扩展
  • Ultimate Status Bar 实现类似 Chrome 在页面下方显示链接 URL 的插件
  • YouTube5 用 HTML5 播放器而不是 Flash,而且可以方便下载视频
  • 微博急简 新浪微博默认页面我觉得过于混乱,这个 user style 扩展可以让微博页面简洁很多

写 InstapaperBookmarklet 的时候了解了 Safari 扩展的工作机制。简单来说扩展包含一些 html 页面和 JavaScript 代码。html 负责扩展界面,JS 实现逻辑。扩展的 JS 执行时只能访问扩展页面的 DOM,要在用户打开的网页添加功能则必须向这些网页注入 JS。有些扩展需要向所有页面注入 JS,如果注入的 JS 文件很大则可能对浏览器性能造成影响。

Comments