Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (function toggleBox() {
- "use strict";
- /*
- * @param handler - The trigger for execute the action. e.g.: <button>
- * @param listener - The event type. e.g.: 'click', 'mouseover', etc...
- * @param object - The element that will toggle a class.
- * @param className - CSS class name to toggle.
- * @dismiss boolean - When clicking outside the @param object, it will remove the class.
- */
- function toggleClass(handler, listener, object, className, dismiss) {
- dismiss = dismiss || false;
- handler.addEventListener(listener, function(event) {
- object.classList.toggle(className);
- event.stopPropagation();
- }, true);
- if (dismiss == true) {
- document.addEventListener("click", function(event) {
- if (!object.contains(event.target)) {
- object.classList.remove(className);
- }
- }, false);
- } else {
- return false;
- }
- }
- // Examples
- //
- // toggleClass(actionsButton, "click", actionsContainer, "show", true);
- // toggleClass(drawerButton, "click", navigationDrawer, "toggle", true);
- // toggleClass(navigationDrawer.querySelector("#close-shortcuts-drawer"), "click", navigationDrawer, "toggle", false);
- })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement