Improve tooltips with Alpine
This commit is contained in:
parent
4d3ba2776c
commit
6c834dd58a
6 changed files with 101 additions and 154 deletions
21
src/components/EnhancedTooltips.astro
Normal file
21
src/components/EnhancedTooltips.astro
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
---
|
||||
|
||||
---
|
||||
|
||||
<script>
|
||||
import tippy from "tippy.js";
|
||||
import "tippy.js/dist/tippy.css";
|
||||
|
||||
const initTooltips = () => {
|
||||
const tooltipItems = document.querySelectorAll<HTMLElement>("[title][data-tooltip]");
|
||||
tooltipItems.forEach((el) => el.setAttribute("data-tooltip", el.title));
|
||||
tippy(tooltipItems, {
|
||||
content: (el) => (el as HTMLElement).dataset.tooltip!,
|
||||
theme: "bm",
|
||||
});
|
||||
tooltipItems.forEach((el) => el.removeAttribute("title"));
|
||||
};
|
||||
|
||||
document.addEventListener("astro:page-load", initTooltips);
|
||||
initTooltips();
|
||||
</script>
|
||||
Loading…
Add table
Add a link
Reference in a new issue