Skip to content

Commit deb7c20

Browse files
committed
Link preview: do not add elements inside headers
Closes #584
1 parent 7235d6b commit deb7c20

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

src/linkpreviews.js

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,21 @@ function setupTooltip(el, doctoolname, doctoolversion, selector) {
189189
);
190190
newTooltip.setAttribute(TOOLTIP_DATA_HREF, anchorElement.href);
191191
newTooltip.classList.add("tooltip");
192-
anchorElement.insertAdjacentElement("afterend", newTooltip);
192+
193+
// Workaround to add the element outside header elements
194+
// https://github.com/readthedocs/addons/issues/584
195+
if (
196+
["h1", "h2", "h3", "h4"].includes(
197+
anchorElement.parentElement.tagName.toLowerCase(),
198+
)
199+
) {
200+
anchorElement.parentElement.insertAdjacentElement(
201+
"afterend",
202+
newTooltip,
203+
);
204+
} else {
205+
anchorElement.insertAdjacentElement("afterend", newTooltip);
206+
}
193207
// Let's add event listeners on the tooltip as well, to prevent hiding, when
194208
// mouse moves away from the anchor element
195209
newTooltip.addEventListener("mouseenter", cancelHideDelay);

0 commit comments

Comments
 (0)