mirror of
https://github.com/kotaindah55/extended-markdown-syntax.git
synced 2026-07-22 05:38:06 +00:00
feat: create custom element for spoiler
This commit is contained in:
parent
8ff1c682d3
commit
9d9148f086
2 changed files with 20 additions and 0 deletions
19
src/preview-mode/custom-element/SpoilerSpanElement.ts
Normal file
19
src/preview-mode/custom-element/SpoilerSpanElement.ts
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
export class SpoilerSpanElement extends HTMLElement {
|
||||
constructor() {
|
||||
super();
|
||||
}
|
||||
clickListener = (evt: MouseEvent) => {
|
||||
let curTarget = evt.currentTarget as HTMLElement;
|
||||
if (curTarget.getAttribute("revealed") === null) {
|
||||
curTarget.setAttribute("revealed", "");
|
||||
} else {
|
||||
curTarget.removeAttribute("revealed");
|
||||
}
|
||||
}
|
||||
connectedCallback() {
|
||||
this.addEventListener("click", this.clickListener);
|
||||
}
|
||||
disconnectedCallback() {
|
||||
this.removeEventListener("click", this.clickListener);
|
||||
}
|
||||
}
|
||||
1
src/preview-mode/custom-element/index.ts
Normal file
1
src/preview-mode/custom-element/index.ts
Normal file
|
|
@ -0,0 +1 @@
|
|||
export * from "./SpoilerSpanElement";
|
||||
Loading…
Reference in a new issue