iframe resizer use internal body, plus margin
[kengrimes.com/theme.git] / static / js / main.js
1 /**
2 * @file main.js
3 * @author Ken Grimes
4 * @license AGPL-3.0
5 * @copyright 2018 - Ken Grimes
6 * @summmary Script for populating text to summary box on svg:hover
7 */
8 'use strict'
9 window.onload = () => {
10 const nav = document.body.getElementsByTagName('header').item(0).getElementsByTagName('nav').item(0)
11 const navAnchors = Array.from(nav.getElementsByTagName('a'))
12 const pageDisplay = nav.getElementsByTagName('header').item(0)
13 const currentPageName = `${pageDisplay.innerHTML}`
14 const updateNav = () => navAnchors.forEach((a) => {
15 const summary = a.getElementsByTagName('summary').item(0).innerHTML
16 const svg = a.getElementsByTagName('svg').item(0)
17 a.addEventListener('mouseover', () => pageDisplay.innerHTML = summary)
18 a.addEventListener('mousedown', () => pageDisplay.innerHTML = summary)
19 a.addEventListener('mouseout', () => pageDisplay.innerHTML = currentPageName)
20 })
21 updateNav()
22 }
23 const resizeIFrame = (iframe) => {
24 iframe.style.height = 0
25 iframe.style.height = (iframe.contentWindow.document.body.scrollHeight * 1.2) + 'px';
26 }