ithinc
狐狸大王
狐狸大王
  • UID22844
  • 注册日期2008-02-04
  • 最后登录2014-09-28
  • 发帖数371
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 社区居民
阅读:2140回复:4

[ucjs]默认添加书签到上次使用的文件夹

楼主#
更多 发布于:2011-04-30 10:39
好像有人抱怨过这个。
(function addBookmarkInLastUsedFolder() {
  PlacesUtils.__defineGetter__("lastUsedFolderId", function() {
    var annosvc = this.annotations;
    return annosvc.getItemsWithAnnotation(LAST_USED_ANNO)
                  .map(function(aId) [aId, annosvc.getItemAnnotation(aId, LAST_USED_ANNO)])
                  .reduce(function(aFolder, bFolder) aFolder[1] > bFolder[1] ? aFolder : bFolder, [0, 0])[0];
  });
  
  eval("PlacesCommandHook.bookmarkPage = " + PlacesCommandHook.bookmarkPage.toString()
    .replace("PlacesUtils.unfiledBookmarksFolderId", "(PlacesUtils.lastUsedFolderId || $&)")
  );
})();
Tab Utilities的功能要求,请提交到http://tabutils.uservoice.com
ithinc
狐狸大王
狐狸大王
  • UID22844
  • 注册日期2008-02-04
  • 最后登录2014-09-28
  • 发帖数371
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 社区居民
1楼#
发布于:2011-04-30 10:39
一楼只对点击星星有效。Ctrl+D与菜单是一致的,可以增加下面的代码实现。不过我觉得点击菜单的加入书签,然后添加到其他目录有点怪怪的。
document.getElementById("Browser:AddBookmarkAs").setAttribute("oncommand", "PlacesCommandHook.bookmarkCurrentPage(true, PlacesUtils.lastUsedFolderId || PlacesUtils.bookmarksMenuFolderId);");
Tab Utilities的功能要求,请提交到http://tabutils.uservoice.com
游客

返回顶部