This is the result.
Here I learned how to find ancestors of a list item in a Google document
voorouders = ancestors, kind = child, ouder = parent, grootouder = grandparent, overgrootouder = great grandparent, overovergrootouder = ?.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | function zoektVoorouders(kind){ var kindText = kind.getText(); var array = [kindText]; var ouder = getParent(kind); if(ouder !== null){ var ouderText = ouder.getText(); array.push(ouderText); var grootouder = getParent(ouder); if(grootouder !== null){ var grootouderText = grootouder.getText(); array.push(grootouderText); var overgrootouder = getParent(grootouder); if(overgrootouder !== null){ var overgrootouderText = overgrootouder.getText(); array.push(overgrootouderText); var overovergrootouder = getParent(overgrootouder); if(overovergrootouder !== null){ var overovergrootouderText = overovergrootouder.getText(); array.push(overovergrootouderText); } } } } return array.reverse(); } function getParent(item) { if(item.getType() == DocumentApp.ElementType.LIST_ITEM && item.getNestingLevel() == 0){ var sibling = item.getPreviousSibling(); while (sibling) { if (sibling.getType() == DocumentApp.ElementType.PARAGRAPH) { return sibling; } sibling = sibling.getPreviousSibling(); } } if(item.getType() == DocumentApp.ElementType.LIST_ITEM && item.getNestingLevel() !== 0){ var sibling = item.getPreviousSibling(); while (sibling) { if (sibling.getNestingLevel() < item.getNestingLevel()) { return sibling; } sibling = sibling.getPreviousSibling(); } } return null; } |
Geen opmerkingen:
Een reactie posten