mirror of
https://git.adityakumar.xyz/hugo-theme-introduction.git
synced 2024-11-14 08:59:45 +00:00
826b4c2c9f
Footnotes are using a fragment format with a colon inside ("#fn:1" for example). However, ":" is a special character for jQuery (http://api.jquery.com/category/selectors/), thus the target anchor is never found and the scrolling does not happen. This change selects the right target element using vanilla Javascript to bypass special characters that could be in the fragment part.
45 lines
1.5 KiB
JavaScript
45 lines
1.5 KiB
JavaScript
// Nav burger animation
|
|
document.addEventListener("DOMContentLoaded", function () {
|
|
// Get all "navbar-burger" elements
|
|
var $navbarBurgers = Array.prototype.slice.call(document.querySelectorAll(".navbar-burger"), 0);
|
|
// Check if there are any navbar burgers
|
|
if ($navbarBurgers.length > 0) {
|
|
// Add a click event on each of them
|
|
$navbarBurgers.forEach(function ($el) {
|
|
$el.addEventListener("click", function () {
|
|
// Get the target from the "data-target" attribute
|
|
var target = $el.dataset.target;
|
|
var $target = document.getElementById(target);
|
|
// Toggle the class on both the "navbar-burger" and the "navbar-menu"
|
|
$el.classList.toggle("is-active");
|
|
$target.classList.toggle("is-active");
|
|
});
|
|
});
|
|
}
|
|
});
|
|
|
|
// Bitty scrolling links script
|
|
$("a[href^=\"#\"]").click(function(e) {
|
|
e.preventDefault();
|
|
$("html, body").animate({
|
|
scrollTop: $(document.getElementById(this.hash.substr(1))).offset().top
|
|
}, 500);
|
|
$("#nav-menu").removeClass("is-active");
|
|
return true;
|
|
})
|
|
|
|
// Modal closer
|
|
$(".card").click(function () {
|
|
$($(this).attr("data-target")).addClass("is-active");
|
|
$("html").addClass("modal-open");
|
|
});
|
|
$(".modal-close").click(function () {
|
|
$($(this).attr("data-target")).removeClass("is-active");
|
|
$("html").removeClass("modal-open");
|
|
});
|
|
$(document).keypress(function(e) {
|
|
if(e.which == 0) {
|
|
$(".modal.is-active").removeClass("is-active");
|
|
$("html").removeClass("modal-open");
|
|
}
|
|
});
|