Alm. Brand

Nyheder

Flere børn slår tænderne på trampolinen

Når børnene hopper på trampolinen, går det ikke altid stille for sig. Hos Alm. Brand oplever man en stigning i…

Læs mere »
Nyheder

De fem typiske sommerskader: Sådan passer du på de mindste

I sommerferien kommer mange børn til skader under udendørsaktiviteter. Alm. Brand giver her en række gode råd, så de små…

Læs mere »
Nyheder

Åbne vinduer og ulåste døre i sommervarmen lokker tyven

I løbet af sommeren lader mange danskere vinduet stå på klem, hvis de skal en smuttur til iskiosken eller ned…

Læs mere »
Nyheder

Sådan undgår du at grillfesten går op i flammer

Hver sommer modtager Alm. Brand hundredvis af brandskader, fordi grillen bliver glemt. Sommervarmen har for alvor fået fat, og det…

Læs mere »
Nyheder

Kontoret kalder: Sådan lærer du din hund at være alene hjemme

Nyheden om at flere kan vende tilbage til arbejdspladsen har næppe begejstret de mange hunde, der har nydt deres ejeres…

Læs mere »
Nyheder

Tid til at bestille sommerferie, selvom verden er i rød? Sådan dækker rejseforsikringen

Foråret og de lysere tider har vækket danskernes ferie- og rejselyst, men mange er i tvivl om, hvordan de er…

Læs mere »
Nyheder

Sådan undgår du en grim fyrværkeriskade

Selvom nytårsfesten formentlig bliver anderledes for de fleste i år, er fyrværkeri nok stadig et uundværligt element i fejringen af…

Læs mere »
Back to top button
ANNONCE
/* Sticky for a second top ad script*/ ;(function () { var last_known_scroll_position = 0; var ticking = false; var floatingClass = 'js-floating'; var onTop = true; var floaters = []; var raf = (function(){ return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function(callback){ window.setTimeout(callback, 1000 / 60) }; })(); function Floater(element) { this.element = element; this.ghost = null; this.isFloat = false; this.static_pos = null; this.headerHeight = 60; } Floater.prototype.shouldBeStatic = function(scroll_pos) { return scroll_pos < this.static_pos; } Floater.prototype.shouldBeFloating = function() { var boundingRect = this.element.getBoundingClientRect(); return boundingRect.top <= this.headerHeight; } Floater.prototype.switchToFloating = function(scroll_pos) { var boundingRect = this.element.getBoundingClientRect(); this.ghost = createGhost(this.element); this.isFloat = true; this.element.style.top = this.headerHeight + 'px'; this.element.style.width = this.element.offsetWidth + 'px'; this.element.style.zIndex = '10000'; // set orig to be fixed this.element.style.position = 'fixed'; // set orig to be fixed this.ghost.style.width = boundingRect.width + 'px'; this.ghost.style.height = boundingRect.height + 'px'; this.ghost.style.display = 'block'; // set ghost to be visible this.static_pos = scroll_pos; this.element.classList.add(floatingClass); } Floater.prototype.switchToStatic = function(scroll_pos) { this.isFloat = false; this.static_pos = null; this.element.style.width = 'auto'; this.element.style.position = 'static'; // set orig to be fixed this.element.style.width = 'auto'; if (this.ghost) { this.ghost.style.display = 'none'; // set ghost to be visible this.ghost.remove(); } this.element.classList.remove(floatingClass); } function initFloaters() { var elements = []; var leftSticky = document.getElementById('div-gpt-ad-sticky_1'); var rightSticky = document.getElementById('div-gpt-ad-sticky_2'); if (leftSticky) elements.push(leftSticky); if (rightSticky) elements.push(rightSticky); // var elements = Array.prototype.slice.call(document.querySelectorAll('.js-float-on-scroll')); floaters = elements.map(function(element) { return new Floater(element); }) } function createGhost(el) { var parent = el.parentNode; var ghost = document.createElement('div'); ghost.style.display = 'none'; parent.insertBefore(ghost, el); return ghost; } function testFloaters(scroll_pos) { for(var i = 0; i < floaters.length; i++) { var floatData = floaters[i]; if(floatData.isFloat) { floatData.shouldBeStatic(scroll_pos) && floatData.switchToStatic(scroll_pos); } else { floatData.shouldBeFloating() && floatData.switchToFloating(scroll_pos); } } } function throttle(func, limit) { var inThrottle; return function () { var args = arguments; var context = this; if (!inThrottle) { func.apply(context, args); inThrottle = true; setTimeout(function() { inThrottle = false }, limit); } } } function update(scroll_pos) { testFloaters(scroll_pos) } function init() { window.addEventListener('scroll', throttle(function(e) { if (last_known_scroll_position === window.scrollY) return; last_known_scroll_position = window.scrollY; if (!ticking) { raf(function() { update(last_known_scroll_position); ticking = false; }); ticking = true; } }, 25)); initFloaters(); } window.addEventListener('DOMContentLoaded', function (event){ init(); }); }());