diff --git a/_includes/link-previews.html b/_includes/link-previews.html
index 0cd073f..b854337 100644
--- a/_includes/link-previews.html
+++ b/_includes/link-previews.html
@@ -5,6 +5,3 @@
-
-
diff --git a/assets/js/scripts.js b/assets/js/scripts.js
index 36e9ec2..cb9682d 100644
--- a/assets/js/scripts.js
+++ b/assets/js/scripts.js
@@ -4,7 +4,6 @@ let opacityTimeout
let contentTimeout
const transitionDurationMs = 100
-const iframe = document.getElementById('link-preview-iframe')
const tooltipWrapper = document.getElementById('tooltip-wrapper')
const tooltipContent = document.getElementById('tooltip-content')
@@ -24,19 +23,22 @@ function showTooltip (event) {
const top = window.pageYOffset || document.documentElement.scrollTop
if (event.target.host === window.location.host) {
- iframe.src = event.target.href
- iframe.onload = function () {
- let tooltipContentHtml = ''
- tooltipContentHtml += '
' + iframe.contentWindow.document.querySelector('h1').innerHTML + '
'
- tooltipContentHtml += iframe.contentWindow.document.querySelector('.note-contents').innerHTML
+ window.fetch(event.target.href)
+ .then(response => response.text())
+ .then(data => {
+ const parser = new window.DOMParser()
+ const doc = parser.parseFromString(data, 'text/html')
+ let tooltipContentHtml = ''
+ tooltipContentHtml += '' + doc.querySelector('h1').innerHTML + '
'
+ tooltipContentHtml += doc.querySelector('.note-contents').innerHTML
- tooltipContent.innerHTML = tooltipContentHtml
+ tooltipContent.innerHTML = tooltipContentHtml
- tooltipWrapper.style.display = 'block'
- setTimeout(function () {
- tooltipWrapper.style.opacity = 1
- }, 1)
- }
+ tooltipWrapper.style.display = 'block'
+ setTimeout(function () {
+ tooltipWrapper.style.opacity = 1
+ }, 1)
+ })
tooltipWrapper.style.left = elemProps.left - (tooltipWrapper.offsetWidth / 2) + (elemProps.width / 2) + 'px'
if ((window.innerHeight - elemProps.top) < (tooltipWrapper.offsetHeight)) {