8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
// functions callable from within pages
// to be sent to the content-cript via an event “GrammalecteCall”
sVersion: "1.0",
generateNodeId: function (xNode) {
xNode.id = "grammalecte_generated_id_" + Date.now().toString(36) + "_" + (Math.floor(Math.random() * (1000000))).toString(36);
console.log("[Grammalecte API] generated id:", xNode.id);
return xNode.id;
},
openPanelForNode: function (vNode) {
// Parameter: a HTML node or the identifier of a HTML node
if (vNode instanceof HTMLElement) {
let sNodeId = vNode.id || this.generateNodeId(vNode);
let xEvent = new CustomEvent("GrammalecteCall", { detail: JSON.stringify({sCommand: "openPanelForNode", sNodeId: sNodeId}) });
document.dispatchEvent(xEvent);
|
|
>
>
>
>
|
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
// functions callable from within pages
// to be sent to the content-cript via an event “GrammalecteCall”
sVersion: "1.0",
generateNodeId: function (xNode) {
xNode.id = "grammalecte_generated_id_" + Date.now().toString(36) + "_" + this._random(0, 1000000).toString(10);
console.log("[Grammalecte API] generated id:", xNode.id);
return xNode.id;
},
_random: function (nMin, nMax) {
return Math.floor(Math.random() * (nMax - nMin + 1) + nMin);
},
openPanelForNode: function (vNode) {
// Parameter: a HTML node or the identifier of a HTML node
if (vNode instanceof HTMLElement) {
let sNodeId = vNode.id || this.generateNodeId(vNode);
let xEvent = new CustomEvent("GrammalecteCall", { detail: JSON.stringify({sCommand: "openPanelForNode", sNodeId: sNodeId}) });
document.dispatchEvent(xEvent);
|