scala-news-reader

rss/atom news reader in scala

git clone https://9o.is/git/scala-news-reader.git

bootstrap-alert.js

(2524B)


      1 /* ==========================================================
      2  * bootstrap-alert.js v2.3.2
      3  * http://twitter.github.com/bootstrap/javascript.html#alerts
      4  * ==========================================================
      5  * Copyright 2012 Twitter, Inc.
      6  *
      7  * Licensed under the Apache License, Version 2.0 (the "License");
      8  * you may not use this file except in compliance with the License.
      9  * You may obtain a copy of the License at
     10  *
     11  * http://www.apache.org/licenses/LICENSE-2.0
     12  *
     13  * Unless required by applicable law or agreed to in writing, software
     14  * distributed under the License is distributed on an "AS IS" BASIS,
     15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     16  * See the License for the specific language governing permissions and
     17  * limitations under the License.
     18  * ========================================================== */
     19 
     20 
     21 !function ($) {
     22 
     23   "use strict"; // jshint ;_;
     24 
     25 
     26  /* ALERT CLASS DEFINITION
     27   * ====================== */
     28 
     29   var dismiss = '[data-dismiss="alert"]'
     30     , Alert = function (el) {
     31         $(el).on('click', dismiss, this.close)
     32       }
     33 
     34   Alert.prototype.close = function (e) {
     35     var $this = $(this)
     36       , selector = $this.attr('data-target')
     37       , $parent
     38 
     39     if (!selector) {
     40       selector = $this.attr('href')
     41       selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
     42     }
     43 
     44     $parent = $(selector)
     45 
     46     e && e.preventDefault()
     47 
     48     $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())
     49 
     50     $parent.trigger(e = $.Event('close'))
     51 
     52     if (e.isDefaultPrevented()) return
     53 
     54     $parent.removeClass('in')
     55 
     56     function removeElement() {
     57       $parent
     58         .trigger('closed')
     59         .remove()
     60     }
     61 
     62     $.support.transition && $parent.hasClass('fade') ?
     63       $parent.on($.support.transition.end, removeElement) :
     64       removeElement()
     65   }
     66 
     67 
     68  /* ALERT PLUGIN DEFINITION
     69   * ======================= */
     70 
     71   var old = $.fn.alert
     72 
     73   $.fn.alert = function (option) {
     74     return this.each(function () {
     75       var $this = $(this)
     76         , data = $this.data('alert')
     77       if (!data) $this.data('alert', (data = new Alert(this)))
     78       if (typeof option == 'string') data[option].call($this)
     79     })
     80   }
     81 
     82   $.fn.alert.Constructor = Alert
     83 
     84 
     85  /* ALERT NO CONFLICT
     86   * ================= */
     87 
     88   $.fn.alert.noConflict = function () {
     89     $.fn.alert = old
     90     return this
     91   }
     92 
     93 
     94  /* ALERT DATA-API
     95   * ============== */
     96 
     97   $(document).on('click.alert.data-api', dismiss, Alert.prototype.close)
     98 
     99 }(window.jQuery);