diff options
Diffstat (limited to 'anki-card-template/card.js')
-rw-r--r-- | anki-card-template/card.js | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/anki-card-template/card.js b/anki-card-template/card.js index 53e2625..2f1dbfb 100644 --- a/anki-card-template/card.js +++ b/anki-card-template/card.js @@ -321,6 +321,13 @@ function parse(input, classes) { return nodes; }; +HTMLElement.prototype.has = function(fn) { + if (fn(this)) return true; + for (var child of this.children) + if (child.has(fn)) return true; + return false; +}; + HTMLElement.prototype.parse = function() { if (this.classList.contains("parsed")) return; // ignore already parsed elements @@ -334,6 +341,8 @@ HTMLElement.prototype.parse = function() { return; } this.innerHTML = nodes.map(n => n.data).join(""); + if (this.id == "sentence" && this.has(n => n.tagName == "B")) this.classList.add("has-b"); + if (this.id == "target-word-translation" && this.has(n => n.classList.contains("script-latin"))) this.classList.add("has-script-latin"); }; function layout() { |