Вход Регистрация
Файл: module-assets/admin/pagedown-bootstrap/demo/browser/bootstrap/js/bootstrap-modal.js
Строк: 197
<?php
/* =========================================================
 * bootstrap-modal.js v2.0.1
 * http://twitter.github.com/bootstrap/javascript.html#modals
 * =========================================================
 * Copyright 2012 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"

 
/* MODAL CLASS DEFINITION
  * ====================== */

  
var Modal = function ( contentoptions ) {
    
this.options options
    this
.$element = $(content)
      .
delegate('[data-dismiss="modal"]''click.dismiss.modal', $.proxy(this.hidethis))
  }

  
Modal.prototype = {

      
constructorModal

    
toggle: function () {
        return 
this[!this.isShown 'show' 'hide']()
      }

    , 
show: function () {
        var 
that this

        
if (this.isShown) return

        $(
'body').addClass('modal-open')

        
this.isShown true
        this
.$element.trigger('show')

        
escape.call(this)
        
backdrop.call(this, function () {
          var 
transition = $.support.transition && that.$element.hasClass('fade')

          !
that.$element.parent().length && that.$element.appendTo(document.body//don't move modals dom position

          
that.$element
            
.show()

          if (
transition) {
            
that.$element[0].offsetWidth // force reflow
          
}

          
that.$element.addClass('in')

          
transition ?
            
that.$element.one($.support.transition.end, function () { that.$element.trigger('shown') }) :
            
that.$element.trigger('shown')

        })
      }

    , 
hide: function ( ) {
        
&& e.preventDefault()

        if (!
this.isShown) return

        var 
that this
        this
.isShown false

        
$('body').removeClass('modal-open')

        
escape.call(this)

        
this.$element
          
.trigger('hide')
          .
removeClass('in')

        $.
support.transition && this.$element.hasClass('fade') ?
          
hideWithTransition.call(this) :
          
hideModal.call(this)
      }

  }


 
/* MODAL PRIVATE METHODS
  * ===================== */

  
function hideWithTransition() {
    var 
that this
      
timeout setTimeout(function () {
          
that.$element.off($.support.transition.end)
          
hideModal.call(that)
        }, 
500)

    
this.$element.one($.support.transition.end, function () {
      
clearTimeout(timeout)
      
hideModal.call(that)
    })
  }

  function 
hideModalthat ) {
    
this.$element
      
.hide()
      .
trigger('hidden')

    
backdrop.call(this)
  }

  function 
backdropcallback ) {
    var 
that this
      
animate this.$element.hasClass('fade') ? 'fade' ''

    
if (this.isShown && this.options.backdrop) {
      var 
doAnimate = $.support.transition && animate

      this
.$backdrop = $('<div class="modal-backdrop ' animate '" />')
        .
appendTo(document.body)

      if (
this.options.backdrop != 'static') {
        
this.$backdrop.click($.proxy(this.hidethis))
      }

      if (
doAnimatethis.$backdrop[0].offsetWidth // force reflow

      
this.$backdrop.addClass('in')

      
doAnimate ?
        
this.$backdrop.one($.support.transition.endcallback) :
        
callback()

    } else if (!
this.isShown && this.$backdrop) {
      
this.$backdrop.removeClass('in')

      $.
support.transition && this.$element.hasClass('fade')?
        
this.$backdrop.one($.support.transition.end, $.proxy(removeBackdropthis)) :
        
removeBackdrop.call(this)

    } else if (
callback) {
      
callback()
    }
  }

  function 
removeBackdrop() {
    
this.$backdrop.remove()
    
this.$backdrop null
  
}

  function 
escape() {
    var 
that this
    
if (this.isShown && this.options.keyboard) {
      $(
document).on('keyup.dismiss.modal', function ( ) {
        
e.which == 27 && that.hide()
      })
    } else if (!
this.isShown) {
      $(
document).off('keyup.dismiss.modal')
    }
  }


 
/* MODAL PLUGIN DEFINITION
  * ======================= */

  
$.fn.modal = function ( option ) {
    return 
this.each(function () {
      var 
$this = $(this)
        , 
data $this.data('modal')
        , 
options = $.extend({}, $.fn.modal.defaults$this.data(), typeof option == 'object' && option)
      if (!
data$this.data('modal', (data = new Modal(thisoptions)))
      if (
typeof option == 'string'data[option]()
      else if (
options.showdata.show()
    })
  }

  $.
fn.modal.defaults = {
      
backdroptrue
    
keyboardtrue
    
showtrue
  
}

  $.
fn.modal.Constructor Modal


 
/* MODAL DATA-API
  * ============== */

  
$(function () {
    $(
'body').on('click.modal.data-api''[data-toggle="modal"]', function ( ) {
      var 
$this = $(this), href
        
$target = $($this.attr('data-target') || (href $this.attr('href')) && href.replace(/.*(?=#[^s]+$)/, '')) //strip for ie7
        
option $target.data('modal') ? 'toggle' : $.extend({}, $target.data(), $this.data())

      
e.preventDefault()
      
$target.modal(option)
    })
  })

}( 
window.jQuery );
?>
Онлайн: 0
Реклама