Ich habe die folgende Datenstruktur (Probe):gruppierten Kontextmenüelemente in einer Chrome-Erweiterung
Folder1
- Folder2
- Snip1
- Snip2
- Folder3
- Snip3
- Snip4
- Folder4
- Snip5
Es gibt keine Begrenzung auf Verschachtelung von Ordnern ineinander
Ich brauche das zu ermöglichen, Benutzer, um einen bestimmten Ausschnitt einzufügen, wenn er/sie mit der rechten Maustaste auf einen Textbereich klickt. Nun kann ich die obigen Daten entweder auf
- Snip1
- Snip2
- Snip3
- Snip4
- Snip5
reduzieren, um einfach Kontextmenüeinträge zu erstellen. Aber, ich will bessere Benutzererfahrung, damit ich so etwas wie lieber:
die Ordnerstruktur in den aktuellen Daten zu simulieren.
Frage: Ist es möglich, solche Art von Kontext Menüelemente Struktur zu generieren, obwohl Chrome-Erweiterungen?
Ich habe mir die docs angesehen, aber nichts nützliches gefunden.
UPDATE: Für alle Interessierten in den Code, hier ist es:
// this is the top most folder
this.createCtxMenuEntry = function(parentId){
this.list.forEach(function(object, index){
var id = chrome.contextMenus.create({
contexts: ["editable"],
id: // generateUniqueIDYourself
title: object.name,
parentId: parentId
});
if(object is folder) object.createCtxMenuEntry(id);
});
};
Der Trick ist, die parentId
Eigenschaft zu verwenden.
Scheint, wie wir beide ziemlich genau die gleiche Erweiterung erstellen, außer dass Ihr 30 mal mehr hat Downloads: D Danke für die Antwort :) –