Ejemplo n.º 1
0
function clearAllMenus(e) {
  var target = e.target
  var dropdown
  if (matches(target, '.Dropdown.open, .Dropdown.open *')) {
    dropdown = closest(target, '.Dropdown', true)
  }
  clearMenus(dropdown)
}
Ejemplo n.º 2
0
.on('click tap', '.Dropdown-toggle', function (e) {
  e.preventDefault()
  e.stopPropagation()

  var dropdown = closest(this, '.Dropdown')
  var c_dropdown = classes(dropdown)
  var activate = !c_dropdown.has('open')

  // just clear all the menus
  if (!activate) return clearMenus()

  // clear all menus but this one
  clearMenus(dropdown)
  // open this one
  openDropdown(dropdown)
})
Ejemplo n.º 3
0
    Object.keys(selectorspace).forEach(function (selector) {
      // If target matches the selector, or is the descendant of an element that does, continue
      var matched

      try {
        // IE throws an error with `[]` attributes in the selector
        matched = matches(target, selector + ',' + context(selector))
      } catch (err) {
        if (console) {
          console.error(target)
          console.error(err.stack)
        }
      }

      if (!matched)
        return

      selectorspace[selector].forEach(function (fn) {
        fn.call(this, e)
      }, closest(target, selector, true, this))
    }, this)