diff options
author | Samy Pessé <samypesse@gmail.com> | 2014-08-10 11:04:10 -0700 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2014-08-11 07:36:51 -0700 |
commit | 691d04e99470e566eb11e9e58fe8109eeda6094c (patch) | |
tree | 7b10d1e7ff105ef9a6b37b46f1d4f0af514d3ed3 /theme/javascript/utils/dropdown.js | |
parent | a54959ee4f879ea83a4a2f1e1457d0d3ca9836d5 (diff) | |
download | gitbook-691d04e99470e566eb11e9e58fe8109eeda6094c.zip gitbook-691d04e99470e566eb11e9e58fe8109eeda6094c.tar.gz gitbook-691d04e99470e566eb11e9e58fe8109eeda6094c.tar.bz2 |
Improve dropdown to make it global
Add dropdown for sharing
Diffstat (limited to 'theme/javascript/utils/dropdown.js')
-rw-r--r-- | theme/javascript/utils/dropdown.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/theme/javascript/utils/dropdown.js b/theme/javascript/utils/dropdown.js new file mode 100644 index 0000000..fe4e1f4 --- /dev/null +++ b/theme/javascript/utils/dropdown.js @@ -0,0 +1,27 @@ +define([ + "jQuery" +], function($) { + + var toggleDropdown = function(e) { + var $dropdown = $(e.currentTarget).parent().find(".dropdown-menu"); + + $dropdown.toggleClass("open"); + e.stopPropagation(); + e.preventDefault(); + }; + + var closeDropdown = function(e) { + $(".dropdown-menu").removeClass("open"); + }; + + // Bind all dropdown + var init = function() { + $(document).on('click', ".toggle-dropdown", toggleDropdown); + $(document).on('click', ".dropdown-menu", function(e){ e.stopPropagation(); }); + $(document).on("click", closeDropdown); + }; + + return { + init: init + }; +}); |