diff options
author | 2019-10-03 18:52:45 +0100 | |
---|---|---|
committer | 2019-10-03 18:52:45 +0100 | |
commit | b83f1b21ced90a4163ed505ceb7d2d6ddc667e85 (patch) | |
tree | 43040a67d16684e9f90eb2eab6f8a1e5b56da249 /pydis_site/static/js/wiki/dropdown.js | |
parent | Remove accidental static files commit; fix Allauth (diff) |
Re-add erroneously removed static files
Diffstat (limited to 'pydis_site/static/js/wiki/dropdown.js')
-rw-r--r-- | pydis_site/static/js/wiki/dropdown.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/pydis_site/static/js/wiki/dropdown.js b/pydis_site/static/js/wiki/dropdown.js new file mode 100644 index 00000000..a914a4ab --- /dev/null +++ b/pydis_site/static/js/wiki/dropdown.js @@ -0,0 +1,35 @@ +(function() { + window.dropdowns = {}; + + let elements = document.getElementsByClassName("dropdown"); + + for (let element of elements) { + let menu_element = element.getElementsByClassName("dropdown-menu")[0]; + + function show() { + $(element).addClass("is-active"); + } + + function hide() { + $(element).removeClass("is-active"); + } + + function handle_event(e) { + show(); + + $(document.body).on("click." + menu_element.id, function() { + hide(); + + $(document.body).off("click." + menu_element.id); + }); + + e.stopPropagation(); + } + + $(element).click(handle_event); + $(element).hover(handle_event); + $(element).mouseleave(hide); + + window.dropdowns[menu_element.id] = element; + } +})(); |