0
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-01-30 22:52:24 +01:00

greatly simply js plugins - remove js api where reasonable

This commit is contained in:
Jacob Thornton 2011-10-19 21:56:06 -07:00
parent c9669be1ec
commit 8545fe9787
10 changed files with 138 additions and 206 deletions

View File

@ -1,4 +1,4 @@
$(document).ready(function(){ $(function(){
// table sort example // table sort example
// ================== // ==================

41
js/bootstrap-accordion.js vendored Normal file
View File

@ -0,0 +1,41 @@
/* =============================================================
* bootstrap-accordion.js v1.3.0
* http://twitter.github.com/bootstrap/javascript.html#accordion
* =============================================================
* Copyright 2011 Twitter, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ============================================================ */
(function( $ ){
var Accordion = function ( element, options ) {}
Accordion.prototype = {}
/* ALERT PLUGIN DEFINITION
* ======================= */
$.fn.accordion = function ( options ) {
if ( options === true ) {
return this.data('accordion')
}
return this.each(function () {
new Accordion(this, options)
})
}
})( window.jQuery || window.ender )

View File

@ -17,53 +17,15 @@
* limitations under the License. * limitations under the License.
* ========================================================== */ * ========================================================== */
(function( $ ){ (function( $ ){
/* CSS TRANSITION SUPPORT (https://gist.github.com/373874)
* ======================================================= */
var transitionEnd
$(document).ready(function () {
$.support.transition = (function () {
var thisBody = document.body || document.documentElement
, thisStyle = thisBody.style
, support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined
return support
})()
// set CSS transition event type
if ( $.support.transition ) {
transitionEnd = "TransitionEnd"
if ( $.browser.webkit ) {
transitionEnd = "webkitTransitionEnd"
} else if ( $.browser.mozilla ) {
transitionEnd = "transitionend"
} else if ( $.browser.opera ) {
transitionEnd = "oTransitionEnd"
}
}
})
/* ALERT CLASS DEFINITION /* ALERT CLASS DEFINITION
* ====================== */ * ====================== */
var Alert = function ( content, selector ) { function close(e) {
this.$element = $(content)
.delegate('[data-alert-dismiss]', 'click', this.close)
}
Alert.prototype = {
close: function (e) {
var $element = $(this).parent('.alert-message') var $element = $(this).parent('.alert-message')
e && e.preventDefault() e && e.preventDefault()
e && e.stopPropagation()
$element.removeClass('in') $element.removeClass('in')
function removeElement () { function removeElement () {
@ -71,36 +33,16 @@
} }
$.support.transition && $element.hasClass('fade') ? $.support.transition && $element.hasClass('fade') ?
$element.bind(transitionEnd, removeElement) : $element.bind($.support.transition.end, removeElement) :
removeElement() removeElement()
} }
}
/* ALERT PLUGIN DEFINITION /* ALERT PLUGIN DEFINITION
* ======================= */ * ======================= */
$.fn.alert = function ( options ) { $(function () {
$('body').delegate('[data-alert-dismiss]', 'click', close)
if ( options === true ) {
return this.data('alert')
}
return this.each(function () {
var $this = $(this)
if ( typeof options == 'string' ) {
return $this.data('alert')[options]()
}
$(this).data('alert', new Alert( this ))
})
}
$(document).ready(function () {
new Alert($('body'))
}) })
})( window.jQuery || window.ender ) })( window.jQuery || window.ender )

View File

@ -20,34 +20,22 @@
(function( $ ){ (function( $ ){
var d = '[data-dropdown]' /* APPLY TO STANDARD DROPDOWN ELEMENTS
* =================================== */
/* DROPDOWN PLUGIN DEFINITION function clearMenus() {
* ========================== */ $(selector).parent('li').removeClass('open')
}
$.fn.dropdown = function () { $(function () {
return this.each(function () { $('html').bind("click", clearMenus)
$(this).delegate(d, 'click', function (e) { $('body').delegate('[data-dropdown]', 'click', function (e) {
var li = $(this).parent('li') var li = $(this).parent('li')
, isActive = li.hasClass('open') , isActive = li.hasClass('open')
clearMenus() clearMenus()
!isActive && li.toggleClass('open') !isActive && li.toggleClass('open')
return false return false
}) })
}) })
}
/* APPLY TO STANDARD DROPDOWN ELEMENTS
* =================================== */
function clearMenus() {
$(d).parent('li').removeClass('open')
}
$(function () {
$('html').bind("click", clearMenus)
$('body').dropdown()
})
})( window.jQuery || window.ender ) })( window.jQuery || window.ender )

81
js/bootstrap-modal.js vendored
View File

@ -20,35 +20,6 @@
!function( $ ){ !function( $ ){
/* CSS TRANSITION SUPPORT (https://gist.github.com/373874)
* ======================================================= */
var transitionEnd
$(document).ready(function () {
$.support.transition = (function () {
var thisBody = document.body || document.documentElement
, thisStyle = thisBody.style
, support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined
return support
})()
// set CSS transition event type
if ( $.support.transition ) {
transitionEnd = "TransitionEnd"
if ( $.browser.webkit ) {
transitionEnd = "webkitTransitionEnd"
} else if ( $.browser.mozilla ) {
transitionEnd = "transitionend"
} else if ( $.browser.opera ) {
transitionEnd = "oTransitionEnd"
}
}
})
/* MODAL PUBLIC CLASS DEFINITION /* MODAL PUBLIC CLASS DEFINITION
* ============================= */ * ============================= */
@ -76,25 +47,7 @@
this.$element.trigger('show') this.$element.trigger('show')
escape.call(this) escape.call(this)
backdrop.call(this, function () { backdrop.call(this)
var transition = $.support.transition && that.$element.hasClass('fade')
that.$element
.appendTo(document.body)
.show()
if (transition) {
that.$element[0].offsetWidth // force reflow
}
that.$element
.addClass('in')
transition ?
that.$element.one(transitionEnd, function () { that.$element.trigger('shown') }) :
that.$element.trigger('shown')
})
return this return this
} }
@ -124,7 +77,7 @@
} }
$.support.transition && this.$element.hasClass('fade') ? $.support.transition && this.$element.hasClass('fade') ?
this.$element.one(transitionEnd, removeElement) : this.$element.one($.support.transition.end, removeElement) :
removeElement() removeElement()
return this return this
@ -136,9 +89,11 @@
/* MODAL PRIVATE METHODS /* MODAL PRIVATE METHODS
* ===================== */ * ===================== */
function backdrop ( callback ) { function backdrop () {
var that = this var that = this
, animate = this.$element.hasClass('fade') ? 'fade' : '' , animate = this.$element.hasClass('fade') ? 'fade' : ''
, callback = $.proxy(show, this)
if ( this.isShown && this.settings.backdrop ) { if ( this.isShown && this.settings.backdrop ) {
var doAnimate = $.support.transition && animate var doAnimate = $.support.transition && animate
@ -156,7 +111,7 @@
this.$backdrop.addClass('in') this.$backdrop.addClass('in')
doAnimate ? doAnimate ?
this.$backdrop.one(transitionEnd, callback) : this.$backdrop.one($.support.transition.end, callback) :
callback() callback()
} else if ( !this.isShown && this.$backdrop ) { } else if ( !this.isShown && this.$backdrop ) {
@ -168,13 +123,33 @@
} }
$.support.transition && this.$element.hasClass('fade')? $.support.transition && this.$element.hasClass('fade')?
this.$backdrop.one(transitionEnd, removeElement) : this.$backdrop.one($.support.transition.end, removeElement) :
removeElement() removeElement()
} else if ( callback ) { } else if ( callback ) {
callback() callback()
} }
} }
function show() {
var transition = $.support.transition && that.$element.hasClass('fade')
, that = this
this.$element
.appendTo(document.body)
.show()
if (transition) {
this.$element[0].offsetWidth // force reflow
}
this.$element
.addClass('in')
transition ?
this.$element.one($.support.transition.end, function () { that.$element.trigger('shown') }) :
this.$element.trigger('shown')
}
function escape() { function escape() {
var that = this var that = this
if ( this.isShown && this.settings.keyboard ) { if ( this.isShown && this.settings.keyboard ) {
@ -233,7 +208,7 @@
/* MODAL DATA-IMPLEMENTATION /* MODAL DATA-IMPLEMENTATION
* ========================= */ * ========================= */
$(document).ready(function () { $(function () {
$('body').delegate('[data-controls-modal]', 'click', function (e) { $('body').delegate('[data-controls-modal]', 'click', function (e) {
e.preventDefault() e.preventDefault()
var $this = $(this).data('show', true) var $this = $(this).data('show', true)

View File

@ -62,7 +62,6 @@
}) })
/* POPOVER PLUGIN DEFINITION /* POPOVER PLUGIN DEFINITION
* ======================= */ * ======================= */

View File

@ -75,30 +75,7 @@
} }
/* SCROLLSPY PLUGIN DEFINITION $(function () {
* =========================== */
$.fn.scrollSpy = function( options ) {
var scrollspy = this.data('scrollspy')
if (!scrollspy) {
return this.each(function () {
$(this).data('scrollspy', new ScrollSpy( this, options ))
})
}
if ( options === true ) {
return scrollspy
}
if ( typeof options == 'string' ) {
scrollspy[options]()
}
return this
}
$(document).ready(function () {
$('body').scrollSpy('[data-scrollspy] li > a') $('body').scrollSpy('[data-scrollspy] li > a')
}) })

10
js/bootstrap-tabs.js vendored
View File

@ -55,14 +55,8 @@
/* TABS/PILLS PLUGIN DEFINITION /* TABS/PILLS PLUGIN DEFINITION
* ============================ */ * ============================ */
$.fn.tabs = $.fn.pills = function ( selector ) { $(function () {
return this.each(function () { $('body').delegate('ul[data-tabs] > li > a, ul[data-pills] > li > a', 'click', tab)
$(this).delegate(selector || '.tabs li > a, .pills > li > a', 'click', tab)
})
}
$(document).ready(function () {
$('body').tabs('ul[data-tabs] li > a, ul[data-pills] > li > a')
}) })
}( window.jQuery || window.ender ); }( window.jQuery || window.ender );

45
js/bootstrap-transitions.js vendored Normal file
View File

@ -0,0 +1,45 @@
/* ===================================================
* bootstrap-transitions.js v2.0.0
* http://twitter.github.com/bootstrap/javascript.html
* ===================================================
* Copyright 2011 Twitter, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ========================================================== */
$(function () {
/* CSS TRANSITION SUPPORT (https://gist.github.com/373874)
* ======================================================= */
$.support.transition = (function () {
var thisBody = document.body || document.documentElement
, thisStyle = thisBody.style
, support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined
return support && {
end: (function () {
var transitionEnd = "TransitionEnd"
if ( $.browser.webkit ) {
transitionEnd = "webkitTransitionEnd"
} else if ( $.browser.mozilla ) {
transitionEnd = "transitionend"
} else if ( $.browser.opera ) {
transitionEnd = "oTransitionEnd"
}
return transitionEnd
})()
}
})()
})

View File

@ -21,35 +21,6 @@
!function( $ ) { !function( $ ) {
/* CSS TRANSITION SUPPORT (https://gist.github.com/373874)
* ======================================================= */
var transitionEnd
$(document).ready(function () {
$.support.transition = (function () {
var thisBody = document.body || document.documentElement
, thisStyle = thisBody.style
, support = thisStyle.transition !== undefined || thisStyle.WebkitTransition !== undefined || thisStyle.MozTransition !== undefined || thisStyle.MsTransition !== undefined || thisStyle.OTransition !== undefined
return support
})()
// set CSS transition event type
if ( $.support.transition ) {
transitionEnd = "TransitionEnd"
if ( $.browser.webkit ) {
transitionEnd = "webkitTransitionEnd"
} else if ( $.browser.mozilla ) {
transitionEnd = "transitionend"
} else if ( $.browser.opera ) {
transitionEnd = "oTransitionEnd"
}
}
})
/* TWIPSY PUBLIC CLASS DEFINITION /* TWIPSY PUBLIC CLASS DEFINITION
* ============================== */ * ============================== */
@ -131,7 +102,7 @@
} }
$.support.transition && this.$tip.hasClass('fade') ? $.support.transition && this.$tip.hasClass('fade') ?
$tip.bind(transitionEnd, removeElement) : $tip.bind($.support.transition.end, removeElement) :
removeElement() removeElement()
} }