Instantly share code, notes, and snippets.

Embed
What would you like to do?
Kill sticky headers.
(function () {
var i, elements = document.querySelectorAll('body *');
for (i = 0; i < elements.length; i++) {
if (getComputedStyle(elements[i]).position === 'fixed') {
elements[i].parentNode.removeChild(elements[i]);
}
}
})();
@alisdair

This comment has been minimized.

@xd1936

This comment has been minimized.

xd1936 commented Jun 27, 2017

for (var i in elements.length) { !
For Each > For.

@jclark-dot-org

This comment has been minimized.

jclark-dot-org commented Jun 27, 2017

Brilliant on mobile. Adding a bookmarklet is a bit of a pain on iOS; I used these directions: https://apple.stackexchange.com/a/74208/22536. I had no problem copying the formatted JS text from the article and prefixing it with "javascript:" when editing the bookmark.

@terwanerik

This comment has been minimized.

terwanerik commented Jun 27, 2017

elements[i].style.position = 'absolute' isn't that better? So you don't have to refresh the page if your nav was sticky

@RyanRoberts

This comment has been minimized.

RyanRoberts commented Jun 27, 2017

You might also want to check for position sticky since that has decent support now.

@truthdoug

This comment has been minimized.

truthdoug commented Jun 27, 2017

yes, what @terwanerik said, but I'd suggest 'static' instead of absolute.

@mgiraldo

This comment has been minimized.

mgiraldo commented Aug 2, 2017

extension doesn't work in twitter :\

@nborrmann

This comment has been minimized.

nborrmann commented Aug 22, 2017

This also kills headers that use position: sticky:

    if (["sticky", "fixed"].includes(getComputedStyle(elements[i]).position)) {

(line 5)

@bookmunkie

This comment has been minimized.

bookmunkie commented Sep 7, 2018

Is it at all possible to adapt this to a Stylus/Stylish script?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment