Index: experimental/webtry/res/webtry/js/bootstrap/scrollspy.js |
diff --git a/experimental/webtry/res/webtry/js/bootstrap/scrollspy.js b/experimental/webtry/res/webtry/js/bootstrap/scrollspy.js |
deleted file mode 100644 |
index db2378787e3d578c3b812ba73af42556e99bb0a5..0000000000000000000000000000000000000000 |
--- a/experimental/webtry/res/webtry/js/bootstrap/scrollspy.js |
+++ /dev/null |
@@ -1,170 +0,0 @@ |
-/* ======================================================================== |
- * Bootstrap: scrollspy.js v3.2.0 |
- * http://getbootstrap.com/javascript/#scrollspy |
- * ======================================================================== |
- * Copyright 2011-2014 Twitter, Inc. |
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) |
- * ======================================================================== */ |
- |
- |
-+function ($) { |
- 'use strict'; |
- |
- // SCROLLSPY CLASS DEFINITION |
- // ========================== |
- |
- function ScrollSpy(element, options) { |
- var process = $.proxy(this.process, this) |
- |
- this.$body = $('body') |
- this.$scrollElement = $(element).is('body') ? $(window) : $(element) |
- this.options = $.extend({}, ScrollSpy.DEFAULTS, options) |
- this.selector = (this.options.target || '') + ' .nav li > a' |
- this.offsets = [] |
- this.targets = [] |
- this.activeTarget = null |
- this.scrollHeight = 0 |
- |
- this.$scrollElement.on('scroll.bs.scrollspy', process) |
- this.refresh() |
- this.process() |
- } |
- |
- ScrollSpy.VERSION = '3.2.0' |
- |
- ScrollSpy.DEFAULTS = { |
- offset: 10 |
- } |
- |
- ScrollSpy.prototype.getScrollHeight = function () { |
- return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight) |
- } |
- |
- ScrollSpy.prototype.refresh = function () { |
- var offsetMethod = 'offset' |
- var offsetBase = 0 |
- |
- if (!$.isWindow(this.$scrollElement[0])) { |
- offsetMethod = 'position' |
- offsetBase = this.$scrollElement.scrollTop() |
- } |
- |
- this.offsets = [] |
- this.targets = [] |
- this.scrollHeight = this.getScrollHeight() |
- |
- var self = this |
- |
- this.$body |
- .find(this.selector) |
- .map(function () { |
- var $el = $(this) |
- var href = $el.data('target') || $el.attr('href') |
- var $href = /^#./.test(href) && $(href) |
- |
- return ($href |
- && $href.length |
- && $href.is(':visible') |
- && [[$href[offsetMethod]().top + offsetBase, href]]) || null |
- }) |
- .sort(function (a, b) { return a[0] - b[0] }) |
- .each(function () { |
- self.offsets.push(this[0]) |
- self.targets.push(this[1]) |
- }) |
- } |
- |
- ScrollSpy.prototype.process = function () { |
- var scrollTop = this.$scrollElement.scrollTop() + this.options.offset |
- var scrollHeight = this.getScrollHeight() |
- var maxScroll = this.options.offset + scrollHeight - this.$scrollElement.height() |
- var offsets = this.offsets |
- var targets = this.targets |
- var activeTarget = this.activeTarget |
- var i |
- |
- if (this.scrollHeight != scrollHeight) { |
- this.refresh() |
- } |
- |
- if (scrollTop >= maxScroll) { |
- return activeTarget != (i = targets[targets.length - 1]) && this.activate(i) |
- } |
- |
- if (activeTarget && scrollTop <= offsets[0]) { |
- return activeTarget != (i = targets[0]) && this.activate(i) |
- } |
- |
- for (i = offsets.length; i--;) { |
- activeTarget != targets[i] |
- && scrollTop >= offsets[i] |
- && (!offsets[i + 1] || scrollTop <= offsets[i + 1]) |
- && this.activate(targets[i]) |
- } |
- } |
- |
- ScrollSpy.prototype.activate = function (target) { |
- this.activeTarget = target |
- |
- $(this.selector) |
- .parentsUntil(this.options.target, '.active') |
- .removeClass('active') |
- |
- var selector = this.selector + |
- '[data-target="' + target + '"],' + |
- this.selector + '[href="' + target + '"]' |
- |
- var active = $(selector) |
- .parents('li') |
- .addClass('active') |
- |
- if (active.parent('.dropdown-menu').length) { |
- active = active |
- .closest('li.dropdown') |
- .addClass('active') |
- } |
- |
- active.trigger('activate.bs.scrollspy') |
- } |
- |
- |
- // SCROLLSPY PLUGIN DEFINITION |
- // =========================== |
- |
- function Plugin(option) { |
- return this.each(function () { |
- var $this = $(this) |
- var data = $this.data('bs.scrollspy') |
- var options = typeof option == 'object' && option |
- |
- if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options))) |
- if (typeof option == 'string') data[option]() |
- }) |
- } |
- |
- var old = $.fn.scrollspy |
- |
- $.fn.scrollspy = Plugin |
- $.fn.scrollspy.Constructor = ScrollSpy |
- |
- |
- // SCROLLSPY NO CONFLICT |
- // ===================== |
- |
- $.fn.scrollspy.noConflict = function () { |
- $.fn.scrollspy = old |
- return this |
- } |
- |
- |
- // SCROLLSPY DATA-API |
- // ================== |
- |
- $(window).on('load.bs.scrollspy.data-api', function () { |
- $('[data-spy="scroll"]').each(function () { |
- var $spy = $(this) |
- Plugin.call($spy, $spy.data()) |
- }) |
- }) |
- |
-}(jQuery); |