86 行
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			86 行
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | /* =========================================================== | ||
|  |  * bootstrap-popover.js v1.4.0 | ||
|  |  * http://twitter.github.com/bootstrap/javascript.html#popover
 | ||
|  |  * =========================================================== | ||
|  |  * 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( $ ) { | ||
|  | 
 | ||
|  |  "use strict" | ||
|  | 
 | ||
|  |   var Popover = function ( element, options ) { | ||
|  |     this.$element = $(element) | ||
|  |     this.options = options | ||
|  |     this.enabled = true | ||
|  |     this.fixTitle() | ||
|  |   } | ||
|  | 
 | ||
|  |   /* NOTE: POPOVER EXTENDS BOOTSTRAP-TWIPSY.js | ||
|  |      ========================================= */ | ||
|  | 
 | ||
|  |   Popover.prototype = $.extend({}, $.fn.twipsy.Twipsy.prototype, { | ||
|  | 
 | ||
|  |     setContent: function () { | ||
|  |       var $tip = this.tip() | ||
|  |       $tip.find('.title')[this.options.html ? 'html' : 'text'](this.getTitle()) | ||
|  |       $tip.find('.content p')[this.options.html ? 'html' : 'text'](this.getContent()) | ||
|  |       $tip[0].className = 'popover' | ||
|  |     } | ||
|  | 
 | ||
|  |   , hasContent: function () { | ||
|  |       return this.getTitle() || this.getContent() | ||
|  |     } | ||
|  | 
 | ||
|  |   , getContent: function () { | ||
|  |       var content | ||
|  |        , $e = this.$element | ||
|  |        , o = this.options | ||
|  | 
 | ||
|  |       if (typeof this.options.content == 'string') { | ||
|  |         content = this.options.content | ||
|  |       } else if (typeof this.options.content == 'function') { | ||
|  |         content = this.options.content.call(this.$element[0]) | ||
|  |       } | ||
|  |       return content | ||
|  |     } | ||
|  | 
 | ||
|  |   , tip: function() { | ||
|  |       if (!this.$tip) { | ||
|  |         this.$tip = $('<div class="popover" />') | ||
|  |           .html(this.options.template) | ||
|  |       } | ||
|  |       return this.$tip | ||
|  |     } | ||
|  | 
 | ||
|  |   }) | ||
|  | 
 | ||
|  | 
 | ||
|  |  /* POPOVER PLUGIN DEFINITION | ||
|  |   * ======================= */ | ||
|  | 
 | ||
|  |   $.fn.popover = function (options) { | ||
|  |     if (typeof options == 'object') options = $.extend({}, $.fn.popover.defaults, options) | ||
|  |     $.fn.twipsy.initWith.call(this, options, Popover, 'popover') | ||
|  |     return this | ||
|  |   } | ||
|  | 
 | ||
|  |   $.fn.popover.defaults = $.extend({} , $.fn.twipsy.defaults, { | ||
|  |     placement: 'right' | ||
|  |   , template: '<div class="arrow"></div><div class="inner"><h3 class="title"></h3><div class="content"><p></p></div></div>' | ||
|  |   }) | ||
|  | 
 | ||
|  | }( window.jQuery || window.ender ); |