/* ======================================================================== * Bootstrap: transition.js v3.0.0 * http://twbs.github.com/bootstrap/javascript.html#transitions * ======================================================================== * Copyright 2013 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 ( $ ) { "use strict"; // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) // ============================================================ function transitionEnd() { var el = document.createElement( 'bootstrap' ) var transEndEventNames = { 'WebkitTransition': 'webkitTransitionEnd' , 'MozTransition': 'transitionend' , 'OTransition': 'oTransitionEnd otransitionend' , 'transition': 'transitionend' } for ( var name in transEndEventNames ) { if ( 'undefined' !== typeof(el.style[ name ]) ) { return { end: transEndEventNames[ name ] } } } } // http://blog.alexmaccaw.com/css-transitions $.fn.emulateTransitionEnd = function ( duration ) { var called = false, $el = this; $( this ).one( $.support.transition.end, function () { called = true; } ) setTimeout( function () { if ( ! called ) { $( $el ).trigger( $.support.transition.end ); } }, duration ) return this } $( function () { $.support.transition = transitionEnd() } ) }( window.jQuery );