Team:Stanford-Brown/Templates/Main

From 2012.igem.org

(Difference between revisions)
Line 5: Line 5:
<link href='http://fonts.googleapis.com/css?family=Ubuntu+Condensed' rel='stylesheet' type='text/css'>  
<link href='http://fonts.googleapis.com/css?family=Ubuntu+Condensed' rel='stylesheet' type='text/css'>  
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.1.1/css/bootstrap-combined.min.css" rel="stylesheet">
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.1.1/css/bootstrap-combined.min.css" rel="stylesheet">
 +
 +
 +
<!-- Gary's dropdown code -->
 +
<script>
 +
 +
!function ($) {
 +
 +
  "use strict"; // jshint ;_;
 +
 +
  var toggle = '[data-toggle="dropdown"]'
 +
    , Dropdown = function (element) {
 +
        var $el = $(element).on('click.dropdown.data-api', this.toggle)
 +
        $('html').on('click.dropdown.data-api', function () {
 +
          $el.parent().removeClass('open')
 +
        })
 +
      }
 +
 +
  Dropdown.prototype = {
 +
 +
    constructor: Dropdown
 +
 +
  , toggle: function (e) {
 +
      var $this = $(this)
 +
        , $parent
 +
        , selector
 +
        , isActive
 +
 +
      if ($this.is('.disabled, :disabled')) return
 +
 +
      selector = $this.attr('data-target')
 +
 +
      if (!selector) {
 +
        selector = $this.attr('href')
 +
        selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
 +
      }
 +
 +
      $parent = $(selector)
 +
      $parent.length || ($parent = $this.parent())
 +
 +
      isActive = $parent.hasClass('open')
 +
 +
      clearMenus()
 +
 +
      if (!isActive) $parent.toggleClass('open')
 +
 +
      return false
 +
    }
 +
 +
  }
 +
 +
  function clearMenus() {
 +
    $(toggle).parent().removeClass('open')
 +
  }
 +
 +
 +
  /* DROPDOWN PLUGIN DEFINITION
 +
  * ========================== */
 +
 +
  $.fn.dropdown = function (option) {
 +
    return this.each(function () {
 +
      var $this = $(this)
 +
        , data = $this.data('dropdown')
 +
      if (!data) $this.data('dropdown', (data = new Dropdown(this)))
 +
      if (typeof option == 'string') data[option].call($this)
 +
    })
 +
  }
 +
 +
  $.fn.dropdown.Constructor = Dropdown
 +
 +
 +
  /* APPLY TO STANDARD DROPDOWN ELEMENTS
 +
  * =================================== */
 +
 +
  $(function () {
 +
    $('html').on('click.dropdown.data-api', clearMenus)
 +
    $('body')
 +
      .on('click.dropdown', '.dropdown form', function (e) { e.stopPropagation() })
 +
      .on('click.dropdown.data-api', toggle, Dropdown.prototype.toggle)
 +
  })
 +
 +
}(window.jQuery);
 +
</script>
    
    
</head>
</head>
Line 69: Line 151:
               </div>
               </div>
  </div> <!-- /navbar-example -->
  </div> <!-- /navbar-example -->
 +
 +
   
   

Revision as of 01:03, 29 September 2012