'Make button disapper if hash changing during scroll
So, I'm using fullpage.js jquery for scrolling on my website.
Each scroll section is divided in hashes, like index.html/#firstPage etc.
I've made a fixed scroll to top button, but I wanna make him disappear if hash equals #firstPage.
I've made a Js script too, but it doesn't work. Any ideas?
mybutton = document.getElementById("scroll_top_button");
var stringHash = window.location.hash;
console.log(stringHash); // Returns hash and it works
function hashDisappear() {
if (stringHash == "#firstPage") {// this thing doesn't work at all.
mybutton.style.display = "none";
} else {
mybutton.style.display = "block";
}
}
My bad, function was never called, but when hash changes, because of scrolling, button is not appearing, only after restart page. How to make it check if hash changes and execute function or smthing?
Solution 1:[1]
Try it
window.addEventListener('hashchange', function() {
//Your Function
}, false);
https://developer.mozilla.org/docs/Web/API/Window/hashchange_event
Solution 2:[2]
I found perfect script for this situation
mybutton = document.getElementById("scroll_top_button");
function locationHashChanged() {
if (location.hash === "#firstPage") {
mybutton.style.display = "none";
} else {
mybutton.style.display = "block";
}
}
window.onhashchange = locationHashChanged;
But @Smith Charl helped me to find main logic to do this script tho
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | evolutionxbox |
| Solution 2 | Walkie_UA |
