Mercurial > wikked
comparison static/bootstrap/js/bootstrap-alert.js @ 61:130eccd396d8
Now using Boostrap with LESS.
| author | Ludovic Chabant <ludovic@chabant.com> |
|---|---|
| date | Wed, 06 Feb 2013 08:22:31 -0800 |
| parents | |
| children | a5a3d454eac9 |
comparison
equal
deleted
inserted
replaced
| 60:8250c977bc50 | 61:130eccd396d8 |
|---|---|
| 1 /* ========================================================== | |
| 2 * bootstrap-alert.js v2.2.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); |
