0
這第一個問題,聽到堆棧溢出,我希望得到我期望幫助..更改Firefox的書籤要首字母大寫(大寫每個單詞)
我一直在尋找一種方式來改變所有的Firefox書籤標題 致'TitleCase'。
我已經找到一個完美的技術,使用fierfox Dev將它改爲UPPERCASE。工具 在瀏覽器環境中被稱爲「暫存器」。
這裏的步驟是: -
- 打開about:config中
- 集devtools.chrome.enabled爲true
- 工具> Web開發者>暫存器
- 環境>瀏覽器
- 編輯>粘貼(即複製並粘貼以下代碼)
- 執行>運行
代碼。
function getChildIds(aRootNode, aChildIds) {
for (var i = 0; i < aRootNode.childCount; i++) {
var node = aRootNode.getChild(i);
aChildIds.push(node.itemId);
if (node.type == node.RESULT_TYPE_FOLDER) {
node.QueryInterface(Ci.nsINavHistoryContainerResultNode);
var oldContainerOpen = node.containerOpen;
node.containerOpen = true;
getChildIds(node, aChildIds);
node.containerOpen = oldContainerOpen;
}
}
}
var bs = Cc["@mozilla.org/browser/nav-bookmarks-service;1"].
getService(Ci.nsINavBookmarksService);
var hs = Cc["@mozilla.org/browser/nav-history-service;1"].
getService(Ci.nsINavHistoryService);
var query = hs.getNewQuery();
var options = hs.getNewQueryOptions();
options.queryType = options.QUERY_TYPE_BOOKMARKS;
var folders = new Array();
folders.push(bs.bookmarksMenuFolder); // Bookmarks Menu
folders.push(bs.toolbarFolder); // Bookmarks Toolbar
folders.push(bs.unfiledBookmarksFolder); // Unsorted Bookmarks
var childIds = new Array();
for (var i = 0; i < folders.length; i++) {
query.setFolders(folders.slice(i, i + 1), 1);
var result = hs.executeQuery(query, options);
var rootNode = result.root;
rootNode.containerOpen = true;
getChildIds(rootNode, childIds); // recursive function
rootNode.containerOpen = false;
}
bs.runInBatchMode({
runBatched: function() {
for (var i = 0; i < childIds.length; i++) {
var type = bs.getItemType(childIds[i]);
if (type == bs.TYPE_BOOKMARK || type == bs.TYPE_FOLDER) {
var title = bs.getItemTitle(childIds[i]);
if (title) {
bs.setItemTitle(childIds[i], title.toUpperCase());
}
}
}
}
}, null);
所以,我的問題是,如何修改代碼以改變該Bookkmarks'標題 要首字母大寫(大寫每個字)?
在此先感謝...
歡迎!你試圖將事情轉換爲標題案例? –