1
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-02-23 18:40:03 +00:00

fix scrollspy simplify stuff more - break everything.

This commit is contained in:
Jacob Thornton 2011-10-19 23:12:50 -07:00
parent 5ab84f942d
commit 523e02f7df
10 changed files with 78 additions and 57 deletions

View File

@ -53,8 +53,8 @@
<li class="dropdown"> <li class="dropdown">
<a href="#" class="dropdown-toggle" data-dropdown="true">Patterns</a> <a href="#" class="dropdown-toggle" data-dropdown="true">Patterns</a>
<ul class="dropdown-menu"> <ul class="dropdown-menu">
<li><a href="#navigation">Navigation</a></li>
<li><a href="#media">Media</a></li> <li><a href="#media">Media</a></li>
<li><a href="#navigation">Navigation</a></li>
<li><a href="#alerts">Alerts</a></li> <li><a href="#alerts">Alerts</a></li>
<li><a href="#popovers">Popovers</a></li> <li><a href="#popovers">Popovers</a></li>
<li><a href="#autocomplete">Autocomplete</a></li> <li><a href="#autocomplete">Autocomplete</a></li>
@ -147,36 +147,38 @@
<!-- About Bootstrap <!-- About Bootstrap
================================================== --> ================================================== -->
<div class="row"> <section id="about">
<div class="span4"> <div class="row">
<h2>Built for and by nerds</h2> <div class="span4">
<p>Engineers at Twitter have historically used almost any library they were familiar with to meet front-end requirements. Bootstrap began as an answer to the challenges that presented. With the help of many awesome folks, Bootstrap has grown significantly.</p> <h2>Built for and by nerds</h2>
<p>Read more on <a href="https://dev.twitter.com/blog/bootstrap-twitter">dev.twitter.com &rsaquo;</a></p> <p>Engineers at Twitter have historically used almost any library they were familiar with to meet front-end requirements. Bootstrap began as an answer to the challenges that presented. With the help of many awesome folks, Bootstrap has grown significantly.</p>
</div> <p>Read more on <a href="https://dev.twitter.com/blog/bootstrap-twitter">dev.twitter.com &rsaquo;</a></p>
<div class="span4"> </div>
<h2>Cross-everything</h2> <div class="span4">
<p>Bootstrap is tested and supported in major modern browsers like Chrome, Safari, Internet Explorer, and Firefox.</p> <h2>Cross-everything</h2>
<img class="browser-support" src="assets/img/browsers.png" alt="Tested and supported in Chrome, Safari, Internet Explorer, and Firefox"> <p>Bootstrap is tested and supported in major modern browsers like Chrome, Safari, Internet Explorer, and Firefox.</p>
<ul> <img class="browser-support" src="assets/img/browsers.png" alt="Tested and supported in Chrome, Safari, Internet Explorer, and Firefox">
<li>Latest Safari</li> <ul>
<li>Latest Google Chrome</li> <li>Latest Safari</li>
<li>Firefox 4+</li> <li>Latest Google Chrome</li>
<li>Internet Explorer 7+</li> <li>Firefox 4+</li>
<li>Opera 11</li> <li>Internet Explorer 7+</li>
</ul> <li>Opera 11</li>
</div> </ul>
<div class="span4"> </div>
<h2>What's included</h2> <div class="span4">
<p>Bootstrap comes complete with compiled CSS, uncompiled, and example templates.</p> <h2>What's included</h2>
<ul> <p>Bootstrap comes complete with compiled CSS, uncompiled, and example templates.</p>
<li><span class="label">New in 1.3</span> <a href="./javascript.html">Javascript plugins</a></li> <ul>
<li>All original .less files</li> <li><span class="label">New in 1.3</span> <a href="./javascript.html">Javascript plugins</a></li>
<li>Fully <a href="../bootstrap.css">compiled</a> and <a href="../bootstrap.min.css">minified</a> CSS</li> <li>All original .less files</li>
<li>Complete styleguide documentation</li> <li>Fully <a href="../bootstrap.css">compiled</a> and <a href="../bootstrap.min.css">minified</a> CSS</li>
<li>Three example pages with different layouts</li> <li>Complete styleguide documentation</li>
</ul> <li>Three example pages with different layouts</li>
</div> </ul>
</div><!-- /row --> </div>
</div><!-- /row -->
</section>
<h3>Quick-start examples</h3> <h3>Quick-start examples</h3>
<p>Need some quick templates? Check out these basic examples we've put together:</p> <p>Need some quick templates? Check out these basic examples we've put together:</p>
@ -2162,6 +2164,7 @@ Lorem ipsum dolar sit amet illo error <a href="#" title="below">ipsum</a> verita
<script src="http://autobahn.tablesorter.com/jquery.tablesorter.min.js"></script> <script src="http://autobahn.tablesorter.com/jquery.tablesorter.min.js"></script>
<script src="assets/js/google-code-prettify/prettify.js"></script> <script src="assets/js/google-code-prettify/prettify.js"></script>
<script>$(function () { prettyPrint() })</script> <script>$(function () { prettyPrint() })</script>
<script src="../js/bootstrap-transitions.js"></script>
<script src="../js/bootstrap-dropdown.js"></script> <script src="../js/bootstrap-dropdown.js"></script>
<script src="../js/bootstrap-twipsy.js"></script> <script src="../js/bootstrap-twipsy.js"></script>
<script src="../js/bootstrap-scrollspy.js"></script> <script src="../js/bootstrap-scrollspy.js"></script>

View File

@ -1,5 +1,5 @@
/* ============================================================= /* =============================================================
* bootstrap-accordion.js v1.3.0 * bootstrap-accordion.js v2.0.0
* http://twitter.github.com/bootstrap/javascript.html#accordion * http://twitter.github.com/bootstrap/javascript.html#accordion
* ============================================================= * =============================================================
* Copyright 2011 Twitter, Inc. * Copyright 2011 Twitter, Inc.

View File

@ -1,5 +1,5 @@
/* ========================================================== /* ==========================================================
* bootstrap-alerts.js v1.3.0 * bootstrap-alerts.js v2.0.0
* http://twitter.github.com/bootstrap/javascript.html#alerts * http://twitter.github.com/bootstrap/javascript.html#alerts
* ========================================================== * ==========================================================
* Copyright 2011 Twitter, Inc. * Copyright 2011 Twitter, Inc.

View File

@ -1,5 +1,5 @@
/* ============================================================ /* ============================================================
* bootstrap-dropdown.js v1.3.0 * bootstrap-dropdown.js v2.0.0
* http://twitter.github.com/bootstrap/javascript.html#dropdown * http://twitter.github.com/bootstrap/javascript.html#dropdown
* ============================================================ * ============================================================
* Copyright 2011 Twitter, Inc. * Copyright 2011 Twitter, Inc.
@ -22,6 +22,7 @@
/* APPLY TO STANDARD DROPDOWN ELEMENTS /* APPLY TO STANDARD DROPDOWN ELEMENTS
* =================================== */ * =================================== */
var selector = '[data-dropdown]'
function clearMenus() { function clearMenus() {
$(selector).parent('li').removeClass('open') $(selector).parent('li').removeClass('open')
@ -29,7 +30,7 @@
$(function () { $(function () {
$('html').bind("click", clearMenus) $('html').bind("click", clearMenus)
$('body').delegate('[data-dropdown]', 'click', function (e) { $('body').delegate(selector, 'click', function (e) {
var li = $(this).parent('li') var li = $(this).parent('li')
, isActive = li.hasClass('open') , isActive = li.hasClass('open')
clearMenus() clearMenus()

View File

@ -1,5 +1,5 @@
/* ========================================================= /* =========================================================
* bootstrap-modal.js v1.3.0 * bootstrap-modal.js v2.0.0
* http://twitter.github.com/bootstrap/javascript.html#modal * http://twitter.github.com/bootstrap/javascript.html#modal
* ========================================================= * =========================================================
* Copyright 2011 Twitter, Inc. * Copyright 2011 Twitter, Inc.

View File

@ -1,5 +1,5 @@
/* =========================================================== /* ===========================================================
* bootstrap-popover.js v1.3.0 * bootstrap-popover.js v2.0.0
* http://twitter.github.com/bootstrap/javascript.html#popover * http://twitter.github.com/bootstrap/javascript.html#popover
* =========================================================== * ===========================================================
* Copyright 2011 Twitter, Inc. * Copyright 2011 Twitter, Inc.

View File

@ -1,5 +1,5 @@
/* ============================================================= /* =============================================================
* bootstrap-scrollspy.js v1.3.0 * bootstrap-scrollspy.js v2.0.0
* http://twitter.github.com/bootstrap/javascript.html#scrollspy * http://twitter.github.com/bootstrap/javascript.html#scrollspy
* ============================================================= * =============================================================
* Copyright 2011 Twitter, Inc. * Copyright 2011 Twitter, Inc.
@ -22,14 +22,14 @@
var $window = $(window) var $window = $(window)
function ScrollSpy( topbar, selector ) { function ScrollSpy() {
var processScroll = $.proxy(this.processScroll, this) var process = $.proxy(this.process, this)
this.$topbar = $(topbar) this.$topbar = $('body')
this.selector = selector || 'li > a' this.selector = '[data-scrollspy] li > a'
this.refresh() this.refresh()
this.$topbar.delegate(this.selector, 'click', processScroll) this.$topbar.delegate(this.selector, 'click', process)
$window.scroll(processScroll) $window.scroll(process)
this.processScroll() this.process()
} }
ScrollSpy.prototype = { ScrollSpy.prototype = {
@ -45,7 +45,7 @@
}) })
} }
, processScroll: function () { , process: function () {
var scrollTop = $window.scrollTop() + 10 var scrollTop = $window.scrollTop() + 10
, offsets = this.offsets , offsets = this.offsets
, targets = this.targets , targets = this.targets
@ -56,27 +56,34 @@
activeTarget != targets[i] activeTarget != targets[i]
&& scrollTop >= offsets[i] && scrollTop >= offsets[i]
&& (!offsets[i + 1] || scrollTop <= offsets[i + 1]) && (!offsets[i + 1] || scrollTop <= offsets[i + 1])
&& this.activateButton( targets[i] ) && this.activate( targets[i] )
} }
} }
, activateButton: function (target) { , activate: function (target) {
var active
this.activeTarget = target this.activeTarget = target
this.$topbar this.$topbar
.find(this.selector).parent('.active') .find(this.selector).parent('.active')
.removeClass('active') .removeClass('active')
this.$topbar active = this.$topbar
.find(this.selector + '[href="' + target + '"]') .find(this.selector + '[href="' + target + '"]')
.parent('li') .parent('li')
.addClass('active') .addClass('active')
if ( active.parent('.dropdown-menu') ) {
active.closest('li.dropdown').addClass('active')
}
} }
} }
$(function () { $(function () {
$('body').scrollSpy('[data-scrollspy] li > a') new ScrollSpy()
}) })
}( window.jQuery || window.ender ) }( window.jQuery || window.ender )

21
js/bootstrap-tabs.js vendored
View File

@ -1,5 +1,5 @@
/* ======================================================== /* ========================================================
* bootstrap-tabs.js v1.3.0 * bootstrap-tabs.js v2.0.0
* http://twitter.github.com/bootstrap/javascript.html#tabs * http://twitter.github.com/bootstrap/javascript.html#tabs
* ======================================================== * ========================================================
* Copyright 2011 Twitter, Inc. * Copyright 2011 Twitter, Inc.
@ -21,24 +21,33 @@
!function( $ ){ !function( $ ){
function activate ( element, container ) { function activate ( element, container ) {
container.find('> .active').removeClass('active') container
.find('> .active')
.removeClass('active')
.find('> .dropdown-menu > .active')
.removeClass('active')
element.addClass('active') element.addClass('active')
if ( element.parent('.dropdown-menu') ) {
element.closest('li.dropdown').addClass('active')
}
} }
function tab( e ) { function tab( e ) {
var $this = $(this) var $this = $(this)
, $ul = $this.closest('ul') , $ul = $this.closest('ul:not(.dropdown-menu)')
, href = $this.attr('href') , href = $this.attr('href')
, previous , previous
if (/^#\w+/.test(href)) { if ( /^#\w+/.test(href) ) {
e.preventDefault() e.preventDefault()
if ($this.parent('li').hasClass('active')) { if ( $this.parent('li').hasClass('active') ) {
return return
} }
previous = $ul.find('.active a')[0] previous = $ul.find('.active a').last()[0]
$href = $(href) $href = $(href)
activate($this.parent('li'), $ul) activate($this.parent('li'), $ul)

View File

@ -1,5 +1,5 @@
/* ========================================================== /* ==========================================================
* bootstrap-twipsy.js v1.3.0 * bootstrap-twipsy.js v2.0.0
* http://twitter.github.com/bootstrap/javascript.html#twipsy * http://twitter.github.com/bootstrap/javascript.html#twipsy
* Adapted from the original jQuery.tipsy by Jason Frame * Adapted from the original jQuery.tipsy by Jason Frame
* ========================================================== * ==========================================================

View File

@ -11,6 +11,7 @@
<script src="vendor/qunit.js"></script> <script src="vendor/qunit.js"></script>
<!-- plugin sources --> <!-- plugin sources -->
<script src="../../js/bootstrap-transitions.js"></script>
<script src="../../js/bootstrap-alerts.js"></script> <script src="../../js/bootstrap-alerts.js"></script>
<script src="../../js/bootstrap-dropdown.js"></script> <script src="../../js/bootstrap-dropdown.js"></script>
<script src="../../js/bootstrap-modal.js"></script> <script src="../../js/bootstrap-modal.js"></script>