aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Purcell <[email protected]>2011-10-03 10:05:43 +0100
committerSteve Purcell <[email protected]>2011-10-03 10:05:43 +0100
commitbdbb1c92aab9e9379341c80b8d1c53cc14ac7198 (patch)
treec998d6513d5e8d2bd19b6d5388da6f141e9cb579
parent7e01ff8a15f9024fdebc3859283ccc1f4c63cec7 (diff)
downloadbootstrap-bdbb1c92aab9e9379341c80b8d1c53cc14ac7198.tar.xz
bootstrap-bdbb1c92aab9e9379341c80b8d1c53cc14ac7198.zip
Add jquery.ready hook after defining plugin, to avoid breakage when used with modernizr/yepnope
See https://gist.github.com/1258742 for an example, which results in the error "TypeError: Object has no method 'dropdown' at bootstrap-dropdown.js line 31" It looks like in these circumstances, the functions hooked into jquery.ready get run immediately, and so applying the dropdown behavior to specific elements before defining the 'dropdown' method causes breakage.
-rw-r--r--js/bootstrap-dropdown.js27
1 files changed, 15 insertions, 12 deletions
diff --git a/js/bootstrap-dropdown.js b/js/bootstrap-dropdown.js
index a3b0b0dfa..68a3db5f2 100644
--- a/js/bootstrap-dropdown.js
+++ b/js/bootstrap-dropdown.js
@@ -20,17 +20,6 @@
!function( $ ){
- var d = 'a.menu, .dropdown-toggle'
-
- function clearMenus() {
- $(d).parent('li').removeClass('open')
- }
-
- $(function () {
- $('html').bind("click", clearMenus)
- $('body').dropdown( '[data-dropdown] a.menu, [data-dropdown] .dropdown-toggle' )
- })
-
/* DROPDOWN PLUGIN DEFINITION
* ========================== */
@@ -47,4 +36,18 @@
})
}
-}( window.jQuery || window.ender ); \ No newline at end of file
+ /* APPLY TO STANDARD DROPDOWN ELEMENTS
+ * =================================== */
+
+ var d = 'a.menu, .dropdown-toggle'
+
+ function clearMenus() {
+ $(d).parent('li').removeClass('open')
+ }
+
+ $(function () {
+ $('html').bind("click", clearMenus)
+ $('body').dropdown( '[data-dropdown] a.menu, [data-dropdown] .dropdown-toggle' )
+ })
+
+}( window.jQuery || window.ender );