Merge "Serve minified CSS"
This commit is contained in:
commit
b0d9ede2b7
@ -1,11 +1,11 @@
|
|||||||
<!-- Bootstrap CSS -->
|
<!-- Bootstrap CSS -->
|
||||||
<link href="{{pathto('_static/css/bootstrap.css', 1)}}" rel="stylesheet">
|
<link href="{{pathto('_static/css/bootstrap.min.css', 1)}}" rel="stylesheet">
|
||||||
|
|
||||||
<!-- Pygments CSS -->
|
<!-- Pygments CSS -->
|
||||||
<link href="{{pathto('_static/css/native.css', 1)}}" rel="stylesheet">
|
<link href="{{pathto('_static/css/native.css', 1)}}" rel="stylesheet">
|
||||||
|
|
||||||
<!-- Fonts -->
|
<!-- Fonts -->
|
||||||
<link href="{{pathto('_static/css/font-awesome.css', 1)}}" rel="stylesheet">
|
<link href="{{pathto('_static/css/font-awesome.min.css', 1)}}" rel="stylesheet">
|
||||||
|
|
||||||
<!-- Custom CSS -->
|
<!-- Custom CSS -->
|
||||||
<link href="{{pathto('_static/css/combined.css', 1)}}" rel="stylesheet">
|
<link href="{{pathto('_static/css/combined.css', 1)}}" rel="stylesheet">
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
{%- for jsfile in script_files %}
|
|
||||||
{%- if jsfile not in ('_static/jquery.js', '_static/underscore.js', '_static/doctools.js', '_static/searchtools.js') %}
|
|
||||||
<script src="{{ pathto(jsfile, 1) }}" type="text/javascript"></script>
|
|
||||||
{%- endif %}
|
|
||||||
{%- endfor %}
|
|
@ -93,6 +93,5 @@ ga('send', 'pageview');
|
|||||||
</div>
|
</div>
|
||||||
{% include 'footer.html' %}
|
{% include 'footer.html' %}
|
||||||
{% include 'script_footer.html' %}
|
{% include 'script_footer.html' %}
|
||||||
{% include 'js.html' %}
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
<!-- jQuery -->
|
<!-- jQuery -->
|
||||||
<script type="text/javascript" src="{{pathto('_static/js/jquery-3.1.1.js', 1)}}"></script>
|
<script type="text/javascript" src="{{pathto('_static/js/jquery-3.2.1.min.js', 1)}}"></script>
|
||||||
|
|
||||||
<!-- Bootstrap JavaScript -->
|
<!-- Bootstrap JavaScript -->
|
||||||
<script type="text/javascript" src="{{pathto('_static/js/bootstrap.js', 1)}}"></script>
|
<script type="text/javascript" src="{{pathto('_static/js/bootstrap.min.js', 1)}}"></script>
|
||||||
|
|
||||||
<!-- The rest of the JS -->
|
<!-- The rest of the JS -->
|
||||||
<script type="text/javascript" src="{{pathto('_static/js/navigation.js', 1)}}"></script>
|
<script type="text/javascript" src="{{pathto('_static/js/navigation.js', 1)}}"></script>
|
||||||
|
6
openstackdocstheme/theme/openstackdocs/static/css/bootstrap.min.css
vendored
Normal file
6
openstackdocstheme/theme/openstackdocs/static/css/bootstrap.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
@ -1,13 +1,13 @@
|
|||||||
/*!
|
/*!
|
||||||
* Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome
|
* Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
|
||||||
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
|
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
|
||||||
*/
|
*/
|
||||||
/* FONT PATH
|
/* FONT PATH
|
||||||
* -------------------------- */
|
* -------------------------- */
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: 'FontAwesome';
|
font-family: 'FontAwesome';
|
||||||
src: url('../fonts/fontawesome-webfont.eot?v=4.6.3');
|
src: url('../fonts/fontawesome-webfont.eot?v=4.7.0');
|
||||||
src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.6.3') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.6.3') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.6.3') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.6.3') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.6.3#fontawesomeregular') format('svg');
|
src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
}
|
}
|
||||||
@ -1832,6 +1832,7 @@
|
|||||||
content: "\f23e";
|
content: "\f23e";
|
||||||
}
|
}
|
||||||
.fa-battery-4:before,
|
.fa-battery-4:before,
|
||||||
|
.fa-battery:before,
|
||||||
.fa-battery-full:before {
|
.fa-battery-full:before {
|
||||||
content: "\f240";
|
content: "\f240";
|
||||||
}
|
}
|
||||||
@ -2178,6 +2179,143 @@
|
|||||||
.fa-font-awesome:before {
|
.fa-font-awesome:before {
|
||||||
content: "\f2b4";
|
content: "\f2b4";
|
||||||
}
|
}
|
||||||
|
.fa-handshake-o:before {
|
||||||
|
content: "\f2b5";
|
||||||
|
}
|
||||||
|
.fa-envelope-open:before {
|
||||||
|
content: "\f2b6";
|
||||||
|
}
|
||||||
|
.fa-envelope-open-o:before {
|
||||||
|
content: "\f2b7";
|
||||||
|
}
|
||||||
|
.fa-linode:before {
|
||||||
|
content: "\f2b8";
|
||||||
|
}
|
||||||
|
.fa-address-book:before {
|
||||||
|
content: "\f2b9";
|
||||||
|
}
|
||||||
|
.fa-address-book-o:before {
|
||||||
|
content: "\f2ba";
|
||||||
|
}
|
||||||
|
.fa-vcard:before,
|
||||||
|
.fa-address-card:before {
|
||||||
|
content: "\f2bb";
|
||||||
|
}
|
||||||
|
.fa-vcard-o:before,
|
||||||
|
.fa-address-card-o:before {
|
||||||
|
content: "\f2bc";
|
||||||
|
}
|
||||||
|
.fa-user-circle:before {
|
||||||
|
content: "\f2bd";
|
||||||
|
}
|
||||||
|
.fa-user-circle-o:before {
|
||||||
|
content: "\f2be";
|
||||||
|
}
|
||||||
|
.fa-user-o:before {
|
||||||
|
content: "\f2c0";
|
||||||
|
}
|
||||||
|
.fa-id-badge:before {
|
||||||
|
content: "\f2c1";
|
||||||
|
}
|
||||||
|
.fa-drivers-license:before,
|
||||||
|
.fa-id-card:before {
|
||||||
|
content: "\f2c2";
|
||||||
|
}
|
||||||
|
.fa-drivers-license-o:before,
|
||||||
|
.fa-id-card-o:before {
|
||||||
|
content: "\f2c3";
|
||||||
|
}
|
||||||
|
.fa-quora:before {
|
||||||
|
content: "\f2c4";
|
||||||
|
}
|
||||||
|
.fa-free-code-camp:before {
|
||||||
|
content: "\f2c5";
|
||||||
|
}
|
||||||
|
.fa-telegram:before {
|
||||||
|
content: "\f2c6";
|
||||||
|
}
|
||||||
|
.fa-thermometer-4:before,
|
||||||
|
.fa-thermometer:before,
|
||||||
|
.fa-thermometer-full:before {
|
||||||
|
content: "\f2c7";
|
||||||
|
}
|
||||||
|
.fa-thermometer-3:before,
|
||||||
|
.fa-thermometer-three-quarters:before {
|
||||||
|
content: "\f2c8";
|
||||||
|
}
|
||||||
|
.fa-thermometer-2:before,
|
||||||
|
.fa-thermometer-half:before {
|
||||||
|
content: "\f2c9";
|
||||||
|
}
|
||||||
|
.fa-thermometer-1:before,
|
||||||
|
.fa-thermometer-quarter:before {
|
||||||
|
content: "\f2ca";
|
||||||
|
}
|
||||||
|
.fa-thermometer-0:before,
|
||||||
|
.fa-thermometer-empty:before {
|
||||||
|
content: "\f2cb";
|
||||||
|
}
|
||||||
|
.fa-shower:before {
|
||||||
|
content: "\f2cc";
|
||||||
|
}
|
||||||
|
.fa-bathtub:before,
|
||||||
|
.fa-s15:before,
|
||||||
|
.fa-bath:before {
|
||||||
|
content: "\f2cd";
|
||||||
|
}
|
||||||
|
.fa-podcast:before {
|
||||||
|
content: "\f2ce";
|
||||||
|
}
|
||||||
|
.fa-window-maximize:before {
|
||||||
|
content: "\f2d0";
|
||||||
|
}
|
||||||
|
.fa-window-minimize:before {
|
||||||
|
content: "\f2d1";
|
||||||
|
}
|
||||||
|
.fa-window-restore:before {
|
||||||
|
content: "\f2d2";
|
||||||
|
}
|
||||||
|
.fa-times-rectangle:before,
|
||||||
|
.fa-window-close:before {
|
||||||
|
content: "\f2d3";
|
||||||
|
}
|
||||||
|
.fa-times-rectangle-o:before,
|
||||||
|
.fa-window-close-o:before {
|
||||||
|
content: "\f2d4";
|
||||||
|
}
|
||||||
|
.fa-bandcamp:before {
|
||||||
|
content: "\f2d5";
|
||||||
|
}
|
||||||
|
.fa-grav:before {
|
||||||
|
content: "\f2d6";
|
||||||
|
}
|
||||||
|
.fa-etsy:before {
|
||||||
|
content: "\f2d7";
|
||||||
|
}
|
||||||
|
.fa-imdb:before {
|
||||||
|
content: "\f2d8";
|
||||||
|
}
|
||||||
|
.fa-ravelry:before {
|
||||||
|
content: "\f2d9";
|
||||||
|
}
|
||||||
|
.fa-eercast:before {
|
||||||
|
content: "\f2da";
|
||||||
|
}
|
||||||
|
.fa-microchip:before {
|
||||||
|
content: "\f2db";
|
||||||
|
}
|
||||||
|
.fa-snowflake-o:before {
|
||||||
|
content: "\f2dc";
|
||||||
|
}
|
||||||
|
.fa-superpowers:before {
|
||||||
|
content: "\f2dd";
|
||||||
|
}
|
||||||
|
.fa-wpexplorer:before {
|
||||||
|
content: "\f2de";
|
||||||
|
}
|
||||||
|
.fa-meetup:before {
|
||||||
|
content: "\f2e0";
|
||||||
|
}
|
||||||
.sr-only {
|
.sr-only {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 1px;
|
width: 1px;
|
||||||
|
4
openstackdocstheme/theme/openstackdocs/static/css/font-awesome.min.css
vendored
Normal file
4
openstackdocstheme/theme/openstackdocs/static/css/font-awesome.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
7
openstackdocstheme/theme/openstackdocs/static/js/bootstrap.min.js
vendored
Normal file
7
openstackdocstheme/theme/openstackdocs/static/js/bootstrap.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@ -1,15 +1,15 @@
|
|||||||
/*!
|
/*!
|
||||||
* jQuery JavaScript Library v3.1.1
|
* jQuery JavaScript Library v3.2.1
|
||||||
* https://jquery.com/
|
* https://jquery.com/
|
||||||
*
|
*
|
||||||
* Includes Sizzle.js
|
* Includes Sizzle.js
|
||||||
* https://sizzlejs.com/
|
* https://sizzlejs.com/
|
||||||
*
|
*
|
||||||
* Copyright jQuery Foundation and other contributors
|
* Copyright JS Foundation and other contributors
|
||||||
* Released under the MIT license
|
* Released under the MIT license
|
||||||
* https://jquery.org/license
|
* https://jquery.org/license
|
||||||
*
|
*
|
||||||
* Date: 2016-09-22T22:30Z
|
* Date: 2017-03-20T18:59Z
|
||||||
*/
|
*/
|
||||||
( function( global, factory ) {
|
( function( global, factory ) {
|
||||||
|
|
||||||
@ -88,7 +88,7 @@ var support = {};
|
|||||||
|
|
||||||
|
|
||||||
var
|
var
|
||||||
version = "3.1.1",
|
version = "3.2.1",
|
||||||
|
|
||||||
// Define a local copy of jQuery
|
// Define a local copy of jQuery
|
||||||
jQuery = function( selector, context ) {
|
jQuery = function( selector, context ) {
|
||||||
@ -236,11 +236,11 @@ jQuery.extend = jQuery.fn.extend = function() {
|
|||||||
|
|
||||||
// Recurse if we're merging plain objects or arrays
|
// Recurse if we're merging plain objects or arrays
|
||||||
if ( deep && copy && ( jQuery.isPlainObject( copy ) ||
|
if ( deep && copy && ( jQuery.isPlainObject( copy ) ||
|
||||||
( copyIsArray = jQuery.isArray( copy ) ) ) ) {
|
( copyIsArray = Array.isArray( copy ) ) ) ) {
|
||||||
|
|
||||||
if ( copyIsArray ) {
|
if ( copyIsArray ) {
|
||||||
copyIsArray = false;
|
copyIsArray = false;
|
||||||
clone = src && jQuery.isArray( src ) ? src : [];
|
clone = src && Array.isArray( src ) ? src : [];
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
clone = src && jQuery.isPlainObject( src ) ? src : {};
|
clone = src && jQuery.isPlainObject( src ) ? src : {};
|
||||||
@ -279,8 +279,6 @@ jQuery.extend( {
|
|||||||
return jQuery.type( obj ) === "function";
|
return jQuery.type( obj ) === "function";
|
||||||
},
|
},
|
||||||
|
|
||||||
isArray: Array.isArray,
|
|
||||||
|
|
||||||
isWindow: function( obj ) {
|
isWindow: function( obj ) {
|
||||||
return obj != null && obj === obj.window;
|
return obj != null && obj === obj.window;
|
||||||
},
|
},
|
||||||
@ -355,10 +353,6 @@ jQuery.extend( {
|
|||||||
return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
|
return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
|
||||||
},
|
},
|
||||||
|
|
||||||
nodeName: function( elem, name ) {
|
|
||||||
return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
|
|
||||||
},
|
|
||||||
|
|
||||||
each: function( obj, callback ) {
|
each: function( obj, callback ) {
|
||||||
var length, i = 0;
|
var length, i = 0;
|
||||||
|
|
||||||
@ -2843,6 +2837,13 @@ var siblings = function( n, elem ) {
|
|||||||
|
|
||||||
var rneedsContext = jQuery.expr.match.needsContext;
|
var rneedsContext = jQuery.expr.match.needsContext;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function nodeName( elem, name ) {
|
||||||
|
|
||||||
|
return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
|
||||||
|
|
||||||
|
};
|
||||||
var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i );
|
var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i );
|
||||||
|
|
||||||
|
|
||||||
@ -3194,7 +3195,18 @@ jQuery.each( {
|
|||||||
return siblings( elem.firstChild );
|
return siblings( elem.firstChild );
|
||||||
},
|
},
|
||||||
contents: function( elem ) {
|
contents: function( elem ) {
|
||||||
return elem.contentDocument || jQuery.merge( [], elem.childNodes );
|
if ( nodeName( elem, "iframe" ) ) {
|
||||||
|
return elem.contentDocument;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only
|
||||||
|
// Treat the template element as a regular one in browsers that
|
||||||
|
// don't support it.
|
||||||
|
if ( nodeName( elem, "template" ) ) {
|
||||||
|
elem = elem.content || elem;
|
||||||
|
}
|
||||||
|
|
||||||
|
return jQuery.merge( [], elem.childNodes );
|
||||||
}
|
}
|
||||||
}, function( name, fn ) {
|
}, function( name, fn ) {
|
||||||
jQuery.fn[ name ] = function( until, selector ) {
|
jQuery.fn[ name ] = function( until, selector ) {
|
||||||
@ -3292,7 +3304,7 @@ jQuery.Callbacks = function( options ) {
|
|||||||
fire = function() {
|
fire = function() {
|
||||||
|
|
||||||
// Enforce single-firing
|
// Enforce single-firing
|
||||||
locked = options.once;
|
locked = locked || options.once;
|
||||||
|
|
||||||
// Execute callbacks for all pending executions,
|
// Execute callbacks for all pending executions,
|
||||||
// respecting firingIndex overrides and runtime changes
|
// respecting firingIndex overrides and runtime changes
|
||||||
@ -3461,7 +3473,7 @@ function Thrower( ex ) {
|
|||||||
throw ex;
|
throw ex;
|
||||||
}
|
}
|
||||||
|
|
||||||
function adoptValue( value, resolve, reject ) {
|
function adoptValue( value, resolve, reject, noValue ) {
|
||||||
var method;
|
var method;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@ -3477,9 +3489,10 @@ function adoptValue( value, resolve, reject ) {
|
|||||||
// Other non-thenables
|
// Other non-thenables
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
// Support: Android 4.0 only
|
// Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer:
|
||||||
// Strict mode functions invoked without .call/.apply get global-object context
|
// * false: [ value ].slice( 0 ) => resolve( value )
|
||||||
resolve.call( undefined, value );
|
// * true: [ value ].slice( 1 ) => resolve()
|
||||||
|
resolve.apply( undefined, [ value ].slice( noValue ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
// For Promises/A+, convert exceptions into rejections
|
// For Promises/A+, convert exceptions into rejections
|
||||||
@ -3489,7 +3502,7 @@ function adoptValue( value, resolve, reject ) {
|
|||||||
|
|
||||||
// Support: Android 4.0 only
|
// Support: Android 4.0 only
|
||||||
// Strict mode functions invoked without .call/.apply get global-object context
|
// Strict mode functions invoked without .call/.apply get global-object context
|
||||||
reject.call( undefined, value );
|
reject.apply( undefined, [ value ] );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3814,7 +3827,8 @@ jQuery.extend( {
|
|||||||
|
|
||||||
// Single- and empty arguments are adopted like Promise.resolve
|
// Single- and empty arguments are adopted like Promise.resolve
|
||||||
if ( remaining <= 1 ) {
|
if ( remaining <= 1 ) {
|
||||||
adoptValue( singleValue, master.done( updateFunc( i ) ).resolve, master.reject );
|
adoptValue( singleValue, master.done( updateFunc( i ) ).resolve, master.reject,
|
||||||
|
!remaining );
|
||||||
|
|
||||||
// Use .then() to unwrap secondary thenables (cf. gh-3000)
|
// Use .then() to unwrap secondary thenables (cf. gh-3000)
|
||||||
if ( master.state() === "pending" ||
|
if ( master.state() === "pending" ||
|
||||||
@ -3886,15 +3900,6 @@ jQuery.extend( {
|
|||||||
// the ready event fires. See #6781
|
// the ready event fires. See #6781
|
||||||
readyWait: 1,
|
readyWait: 1,
|
||||||
|
|
||||||
// Hold (or release) the ready event
|
|
||||||
holdReady: function( hold ) {
|
|
||||||
if ( hold ) {
|
|
||||||
jQuery.readyWait++;
|
|
||||||
} else {
|
|
||||||
jQuery.ready( true );
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
// Handle when the DOM is ready
|
// Handle when the DOM is ready
|
||||||
ready: function( wait ) {
|
ready: function( wait ) {
|
||||||
|
|
||||||
@ -4130,7 +4135,7 @@ Data.prototype = {
|
|||||||
if ( key !== undefined ) {
|
if ( key !== undefined ) {
|
||||||
|
|
||||||
// Support array or space separated string of keys
|
// Support array or space separated string of keys
|
||||||
if ( jQuery.isArray( key ) ) {
|
if ( Array.isArray( key ) ) {
|
||||||
|
|
||||||
// If key is an array of keys...
|
// If key is an array of keys...
|
||||||
// We always set camelCase keys, so remove that.
|
// We always set camelCase keys, so remove that.
|
||||||
@ -4356,7 +4361,7 @@ jQuery.extend( {
|
|||||||
|
|
||||||
// Speed up dequeue by getting out quickly if this is just a lookup
|
// Speed up dequeue by getting out quickly if this is just a lookup
|
||||||
if ( data ) {
|
if ( data ) {
|
||||||
if ( !queue || jQuery.isArray( data ) ) {
|
if ( !queue || Array.isArray( data ) ) {
|
||||||
queue = dataPriv.access( elem, type, jQuery.makeArray( data ) );
|
queue = dataPriv.access( elem, type, jQuery.makeArray( data ) );
|
||||||
} else {
|
} else {
|
||||||
queue.push( data );
|
queue.push( data );
|
||||||
@ -4733,7 +4738,7 @@ function getAll( context, tag ) {
|
|||||||
ret = [];
|
ret = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( tag === undefined || tag && jQuery.nodeName( context, tag ) ) {
|
if ( tag === undefined || tag && nodeName( context, tag ) ) {
|
||||||
return jQuery.merge( [ context ], ret );
|
return jQuery.merge( [ context ], ret );
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5340,7 +5345,7 @@ jQuery.event = {
|
|||||||
|
|
||||||
// For checkbox, fire native event so checked state will be right
|
// For checkbox, fire native event so checked state will be right
|
||||||
trigger: function() {
|
trigger: function() {
|
||||||
if ( this.type === "checkbox" && this.click && jQuery.nodeName( this, "input" ) ) {
|
if ( this.type === "checkbox" && this.click && nodeName( this, "input" ) ) {
|
||||||
this.click();
|
this.click();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -5348,7 +5353,7 @@ jQuery.event = {
|
|||||||
|
|
||||||
// For cross-browser consistency, don't fire native .click() on links
|
// For cross-browser consistency, don't fire native .click() on links
|
||||||
_default: function( event ) {
|
_default: function( event ) {
|
||||||
return jQuery.nodeName( event.target, "a" );
|
return nodeName( event.target, "a" );
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -5625,11 +5630,12 @@ var
|
|||||||
rscriptTypeMasked = /^true\/(.*)/,
|
rscriptTypeMasked = /^true\/(.*)/,
|
||||||
rcleanScript = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;
|
rcleanScript = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;
|
||||||
|
|
||||||
|
// Prefer a tbody over its parent table for containing new rows
|
||||||
function manipulationTarget( elem, content ) {
|
function manipulationTarget( elem, content ) {
|
||||||
if ( jQuery.nodeName( elem, "table" ) &&
|
if ( nodeName( elem, "table" ) &&
|
||||||
jQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) {
|
nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) {
|
||||||
|
|
||||||
return elem.getElementsByTagName( "tbody" )[ 0 ] || elem;
|
return jQuery( ">tbody", elem )[ 0 ] || elem;
|
||||||
}
|
}
|
||||||
|
|
||||||
return elem;
|
return elem;
|
||||||
@ -6159,12 +6165,18 @@ var getStyles = function( elem ) {
|
|||||||
|
|
||||||
function curCSS( elem, name, computed ) {
|
function curCSS( elem, name, computed ) {
|
||||||
var width, minWidth, maxWidth, ret,
|
var width, minWidth, maxWidth, ret,
|
||||||
|
|
||||||
|
// Support: Firefox 51+
|
||||||
|
// Retrieving style before computed somehow
|
||||||
|
// fixes an issue with getting wrong values
|
||||||
|
// on detached elements
|
||||||
style = elem.style;
|
style = elem.style;
|
||||||
|
|
||||||
computed = computed || getStyles( elem );
|
computed = computed || getStyles( elem );
|
||||||
|
|
||||||
// Support: IE <=9 only
|
// getPropertyValue is needed for:
|
||||||
// getPropertyValue is only needed for .css('filter') (#12537)
|
// .css('filter') (IE 9 only, #12537)
|
||||||
|
// .css('--customProperty) (#3144)
|
||||||
if ( computed ) {
|
if ( computed ) {
|
||||||
ret = computed.getPropertyValue( name ) || computed[ name ];
|
ret = computed.getPropertyValue( name ) || computed[ name ];
|
||||||
|
|
||||||
@ -6230,6 +6242,7 @@ var
|
|||||||
// except "table", "table-cell", or "table-caption"
|
// except "table", "table-cell", or "table-caption"
|
||||||
// See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display
|
// See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display
|
||||||
rdisplayswap = /^(none|table(?!-c[ea]).+)/,
|
rdisplayswap = /^(none|table(?!-c[ea]).+)/,
|
||||||
|
rcustomProp = /^--/,
|
||||||
cssShow = { position: "absolute", visibility: "hidden", display: "block" },
|
cssShow = { position: "absolute", visibility: "hidden", display: "block" },
|
||||||
cssNormalTransform = {
|
cssNormalTransform = {
|
||||||
letterSpacing: "0",
|
letterSpacing: "0",
|
||||||
@ -6259,6 +6272,16 @@ function vendorPropName( name ) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Return a property mapped along what jQuery.cssProps suggests or to
|
||||||
|
// a vendor prefixed property.
|
||||||
|
function finalPropName( name ) {
|
||||||
|
var ret = jQuery.cssProps[ name ];
|
||||||
|
if ( !ret ) {
|
||||||
|
ret = jQuery.cssProps[ name ] = vendorPropName( name ) || name;
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
function setPositiveNumber( elem, value, subtract ) {
|
function setPositiveNumber( elem, value, subtract ) {
|
||||||
|
|
||||||
// Any relative (+/-) values have already been
|
// Any relative (+/-) values have already been
|
||||||
@ -6319,44 +6342,31 @@ function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) {
|
|||||||
|
|
||||||
function getWidthOrHeight( elem, name, extra ) {
|
function getWidthOrHeight( elem, name, extra ) {
|
||||||
|
|
||||||
// Start with offset property, which is equivalent to the border-box value
|
// Start with computed style
|
||||||
var val,
|
var valueIsBorderBox,
|
||||||
valueIsBorderBox = true,
|
|
||||||
styles = getStyles( elem ),
|
styles = getStyles( elem ),
|
||||||
|
val = curCSS( elem, name, styles ),
|
||||||
isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box";
|
isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box";
|
||||||
|
|
||||||
// Support: IE <=11 only
|
// Computed unit is not pixels. Stop here and return.
|
||||||
// Running getBoundingClientRect on a disconnected node
|
if ( rnumnonpx.test( val ) ) {
|
||||||
// in IE throws an error.
|
return val;
|
||||||
if ( elem.getClientRects().length ) {
|
|
||||||
val = elem.getBoundingClientRect()[ name ];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Some non-html elements return undefined for offsetWidth, so check for null/undefined
|
// Check for style in case a browser which returns unreliable values
|
||||||
// svg - https://bugzilla.mozilla.org/show_bug.cgi?id=649285
|
// for getComputedStyle silently falls back to the reliable elem.style
|
||||||
// MathML - https://bugzilla.mozilla.org/show_bug.cgi?id=491668
|
valueIsBorderBox = isBorderBox &&
|
||||||
if ( val <= 0 || val == null ) {
|
( support.boxSizingReliable() || val === elem.style[ name ] );
|
||||||
|
|
||||||
// Fall back to computed then uncomputed css if necessary
|
// Fall back to offsetWidth/Height when value is "auto"
|
||||||
val = curCSS( elem, name, styles );
|
// This happens for inline elements with no explicit setting (gh-3571)
|
||||||
if ( val < 0 || val == null ) {
|
if ( val === "auto" ) {
|
||||||
val = elem.style[ name ];
|
val = elem[ "offset" + name[ 0 ].toUpperCase() + name.slice( 1 ) ];
|
||||||
}
|
|
||||||
|
|
||||||
// Computed unit is not pixels. Stop here and return.
|
|
||||||
if ( rnumnonpx.test( val ) ) {
|
|
||||||
return val;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check for style in case a browser which returns unreliable values
|
|
||||||
// for getComputedStyle silently falls back to the reliable elem.style
|
|
||||||
valueIsBorderBox = isBorderBox &&
|
|
||||||
( support.boxSizingReliable() || val === elem.style[ name ] );
|
|
||||||
|
|
||||||
// Normalize "", auto, and prepare for extra
|
|
||||||
val = parseFloat( val ) || 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Normalize "", auto, and prepare for extra
|
||||||
|
val = parseFloat( val ) || 0;
|
||||||
|
|
||||||
// Use the active box-sizing model to add/subtract irrelevant styles
|
// Use the active box-sizing model to add/subtract irrelevant styles
|
||||||
return ( val +
|
return ( val +
|
||||||
augmentWidthOrHeight(
|
augmentWidthOrHeight(
|
||||||
@ -6420,10 +6430,15 @@ jQuery.extend( {
|
|||||||
// Make sure that we're working with the right name
|
// Make sure that we're working with the right name
|
||||||
var ret, type, hooks,
|
var ret, type, hooks,
|
||||||
origName = jQuery.camelCase( name ),
|
origName = jQuery.camelCase( name ),
|
||||||
|
isCustomProp = rcustomProp.test( name ),
|
||||||
style = elem.style;
|
style = elem.style;
|
||||||
|
|
||||||
name = jQuery.cssProps[ origName ] ||
|
// Make sure that we're working with the right name. We don't
|
||||||
( jQuery.cssProps[ origName ] = vendorPropName( origName ) || origName );
|
// want to query the value if it is a CSS custom property
|
||||||
|
// since they are user-defined.
|
||||||
|
if ( !isCustomProp ) {
|
||||||
|
name = finalPropName( origName );
|
||||||
|
}
|
||||||
|
|
||||||
// Gets hook for the prefixed version, then unprefixed version
|
// Gets hook for the prefixed version, then unprefixed version
|
||||||
hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
|
hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
|
||||||
@ -6459,7 +6474,11 @@ jQuery.extend( {
|
|||||||
if ( !hooks || !( "set" in hooks ) ||
|
if ( !hooks || !( "set" in hooks ) ||
|
||||||
( value = hooks.set( elem, value, extra ) ) !== undefined ) {
|
( value = hooks.set( elem, value, extra ) ) !== undefined ) {
|
||||||
|
|
||||||
style[ name ] = value;
|
if ( isCustomProp ) {
|
||||||
|
style.setProperty( name, value );
|
||||||
|
} else {
|
||||||
|
style[ name ] = value;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
@ -6478,11 +6497,15 @@ jQuery.extend( {
|
|||||||
|
|
||||||
css: function( elem, name, extra, styles ) {
|
css: function( elem, name, extra, styles ) {
|
||||||
var val, num, hooks,
|
var val, num, hooks,
|
||||||
origName = jQuery.camelCase( name );
|
origName = jQuery.camelCase( name ),
|
||||||
|
isCustomProp = rcustomProp.test( name );
|
||||||
|
|
||||||
// Make sure that we're working with the right name
|
// Make sure that we're working with the right name. We don't
|
||||||
name = jQuery.cssProps[ origName ] ||
|
// want to modify the value if it is a CSS custom property
|
||||||
( jQuery.cssProps[ origName ] = vendorPropName( origName ) || origName );
|
// since they are user-defined.
|
||||||
|
if ( !isCustomProp ) {
|
||||||
|
name = finalPropName( origName );
|
||||||
|
}
|
||||||
|
|
||||||
// Try prefixed name followed by the unprefixed name
|
// Try prefixed name followed by the unprefixed name
|
||||||
hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
|
hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];
|
||||||
@ -6507,6 +6530,7 @@ jQuery.extend( {
|
|||||||
num = parseFloat( val );
|
num = parseFloat( val );
|
||||||
return extra === true || isFinite( num ) ? num || 0 : val;
|
return extra === true || isFinite( num ) ? num || 0 : val;
|
||||||
}
|
}
|
||||||
|
|
||||||
return val;
|
return val;
|
||||||
}
|
}
|
||||||
} );
|
} );
|
||||||
@ -6606,7 +6630,7 @@ jQuery.fn.extend( {
|
|||||||
map = {},
|
map = {},
|
||||||
i = 0;
|
i = 0;
|
||||||
|
|
||||||
if ( jQuery.isArray( name ) ) {
|
if ( Array.isArray( name ) ) {
|
||||||
styles = getStyles( elem );
|
styles = getStyles( elem );
|
||||||
len = name.length;
|
len = name.length;
|
||||||
|
|
||||||
@ -6744,13 +6768,18 @@ jQuery.fx.step = {};
|
|||||||
|
|
||||||
|
|
||||||
var
|
var
|
||||||
fxNow, timerId,
|
fxNow, inProgress,
|
||||||
rfxtypes = /^(?:toggle|show|hide)$/,
|
rfxtypes = /^(?:toggle|show|hide)$/,
|
||||||
rrun = /queueHooks$/;
|
rrun = /queueHooks$/;
|
||||||
|
|
||||||
function raf() {
|
function schedule() {
|
||||||
if ( timerId ) {
|
if ( inProgress ) {
|
||||||
window.requestAnimationFrame( raf );
|
if ( document.hidden === false && window.requestAnimationFrame ) {
|
||||||
|
window.requestAnimationFrame( schedule );
|
||||||
|
} else {
|
||||||
|
window.setTimeout( schedule, jQuery.fx.interval );
|
||||||
|
}
|
||||||
|
|
||||||
jQuery.fx.tick();
|
jQuery.fx.tick();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -6977,7 +7006,7 @@ function propFilter( props, specialEasing ) {
|
|||||||
name = jQuery.camelCase( index );
|
name = jQuery.camelCase( index );
|
||||||
easing = specialEasing[ name ];
|
easing = specialEasing[ name ];
|
||||||
value = props[ index ];
|
value = props[ index ];
|
||||||
if ( jQuery.isArray( value ) ) {
|
if ( Array.isArray( value ) ) {
|
||||||
easing = value[ 1 ];
|
easing = value[ 1 ];
|
||||||
value = props[ index ] = value[ 0 ];
|
value = props[ index ] = value[ 0 ];
|
||||||
}
|
}
|
||||||
@ -7036,12 +7065,19 @@ function Animation( elem, properties, options ) {
|
|||||||
|
|
||||||
deferred.notifyWith( elem, [ animation, percent, remaining ] );
|
deferred.notifyWith( elem, [ animation, percent, remaining ] );
|
||||||
|
|
||||||
|
// If there's more to do, yield
|
||||||
if ( percent < 1 && length ) {
|
if ( percent < 1 && length ) {
|
||||||
return remaining;
|
return remaining;
|
||||||
} else {
|
|
||||||
deferred.resolveWith( elem, [ animation ] );
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// If this was an empty animation, synthesize a final progress notification
|
||||||
|
if ( !length ) {
|
||||||
|
deferred.notifyWith( elem, [ animation, 1, 0 ] );
|
||||||
|
}
|
||||||
|
|
||||||
|
// Resolve the animation and report its conclusion
|
||||||
|
deferred.resolveWith( elem, [ animation ] );
|
||||||
|
return false;
|
||||||
},
|
},
|
||||||
animation = deferred.promise( {
|
animation = deferred.promise( {
|
||||||
elem: elem,
|
elem: elem,
|
||||||
@ -7106,6 +7142,13 @@ function Animation( elem, properties, options ) {
|
|||||||
animation.opts.start.call( elem, animation );
|
animation.opts.start.call( elem, animation );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Attach callbacks from options
|
||||||
|
animation
|
||||||
|
.progress( animation.opts.progress )
|
||||||
|
.done( animation.opts.done, animation.opts.complete )
|
||||||
|
.fail( animation.opts.fail )
|
||||||
|
.always( animation.opts.always );
|
||||||
|
|
||||||
jQuery.fx.timer(
|
jQuery.fx.timer(
|
||||||
jQuery.extend( tick, {
|
jQuery.extend( tick, {
|
||||||
elem: elem,
|
elem: elem,
|
||||||
@ -7114,11 +7157,7 @@ function Animation( elem, properties, options ) {
|
|||||||
} )
|
} )
|
||||||
);
|
);
|
||||||
|
|
||||||
// attach callbacks from options
|
return animation;
|
||||||
return animation.progress( animation.opts.progress )
|
|
||||||
.done( animation.opts.done, animation.opts.complete )
|
|
||||||
.fail( animation.opts.fail )
|
|
||||||
.always( animation.opts.always );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
jQuery.Animation = jQuery.extend( Animation, {
|
jQuery.Animation = jQuery.extend( Animation, {
|
||||||
@ -7169,8 +7208,8 @@ jQuery.speed = function( speed, easing, fn ) {
|
|||||||
easing: fn && easing || easing && !jQuery.isFunction( easing ) && easing
|
easing: fn && easing || easing && !jQuery.isFunction( easing ) && easing
|
||||||
};
|
};
|
||||||
|
|
||||||
// Go to the end state if fx are off or if document is hidden
|
// Go to the end state if fx are off
|
||||||
if ( jQuery.fx.off || document.hidden ) {
|
if ( jQuery.fx.off ) {
|
||||||
opt.duration = 0;
|
opt.duration = 0;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
@ -7362,7 +7401,7 @@ jQuery.fx.tick = function() {
|
|||||||
for ( ; i < timers.length; i++ ) {
|
for ( ; i < timers.length; i++ ) {
|
||||||
timer = timers[ i ];
|
timer = timers[ i ];
|
||||||
|
|
||||||
// Checks the timer has not already been removed
|
// Run the timer and safely remove it when done (allowing for external removal)
|
||||||
if ( !timer() && timers[ i ] === timer ) {
|
if ( !timer() && timers[ i ] === timer ) {
|
||||||
timers.splice( i--, 1 );
|
timers.splice( i--, 1 );
|
||||||
}
|
}
|
||||||
@ -7376,30 +7415,21 @@ jQuery.fx.tick = function() {
|
|||||||
|
|
||||||
jQuery.fx.timer = function( timer ) {
|
jQuery.fx.timer = function( timer ) {
|
||||||
jQuery.timers.push( timer );
|
jQuery.timers.push( timer );
|
||||||
if ( timer() ) {
|
jQuery.fx.start();
|
||||||
jQuery.fx.start();
|
|
||||||
} else {
|
|
||||||
jQuery.timers.pop();
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
jQuery.fx.interval = 13;
|
jQuery.fx.interval = 13;
|
||||||
jQuery.fx.start = function() {
|
jQuery.fx.start = function() {
|
||||||
if ( !timerId ) {
|
if ( inProgress ) {
|
||||||
timerId = window.requestAnimationFrame ?
|
return;
|
||||||
window.requestAnimationFrame( raf ) :
|
|
||||||
window.setInterval( jQuery.fx.tick, jQuery.fx.interval );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
inProgress = true;
|
||||||
|
schedule();
|
||||||
};
|
};
|
||||||
|
|
||||||
jQuery.fx.stop = function() {
|
jQuery.fx.stop = function() {
|
||||||
if ( window.cancelAnimationFrame ) {
|
inProgress = null;
|
||||||
window.cancelAnimationFrame( timerId );
|
|
||||||
} else {
|
|
||||||
window.clearInterval( timerId );
|
|
||||||
}
|
|
||||||
|
|
||||||
timerId = null;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
jQuery.fx.speeds = {
|
jQuery.fx.speeds = {
|
||||||
@ -7516,7 +7546,7 @@ jQuery.extend( {
|
|||||||
type: {
|
type: {
|
||||||
set: function( elem, value ) {
|
set: function( elem, value ) {
|
||||||
if ( !support.radioValue && value === "radio" &&
|
if ( !support.radioValue && value === "radio" &&
|
||||||
jQuery.nodeName( elem, "input" ) ) {
|
nodeName( elem, "input" ) ) {
|
||||||
var val = elem.value;
|
var val = elem.value;
|
||||||
elem.setAttribute( "type", value );
|
elem.setAttribute( "type", value );
|
||||||
if ( val ) {
|
if ( val ) {
|
||||||
@ -7947,7 +7977,7 @@ jQuery.fn.extend( {
|
|||||||
} else if ( typeof val === "number" ) {
|
} else if ( typeof val === "number" ) {
|
||||||
val += "";
|
val += "";
|
||||||
|
|
||||||
} else if ( jQuery.isArray( val ) ) {
|
} else if ( Array.isArray( val ) ) {
|
||||||
val = jQuery.map( val, function( value ) {
|
val = jQuery.map( val, function( value ) {
|
||||||
return value == null ? "" : value + "";
|
return value == null ? "" : value + "";
|
||||||
} );
|
} );
|
||||||
@ -8006,7 +8036,7 @@ jQuery.extend( {
|
|||||||
// Don't return options that are disabled or in a disabled optgroup
|
// Don't return options that are disabled or in a disabled optgroup
|
||||||
!option.disabled &&
|
!option.disabled &&
|
||||||
( !option.parentNode.disabled ||
|
( !option.parentNode.disabled ||
|
||||||
!jQuery.nodeName( option.parentNode, "optgroup" ) ) ) {
|
!nodeName( option.parentNode, "optgroup" ) ) ) {
|
||||||
|
|
||||||
// Get the specific value for the option
|
// Get the specific value for the option
|
||||||
value = jQuery( option ).val();
|
value = jQuery( option ).val();
|
||||||
@ -8058,7 +8088,7 @@ jQuery.extend( {
|
|||||||
jQuery.each( [ "radio", "checkbox" ], function() {
|
jQuery.each( [ "radio", "checkbox" ], function() {
|
||||||
jQuery.valHooks[ this ] = {
|
jQuery.valHooks[ this ] = {
|
||||||
set: function( elem, value ) {
|
set: function( elem, value ) {
|
||||||
if ( jQuery.isArray( value ) ) {
|
if ( Array.isArray( value ) ) {
|
||||||
return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 );
|
return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -8353,7 +8383,7 @@ var
|
|||||||
function buildParams( prefix, obj, traditional, add ) {
|
function buildParams( prefix, obj, traditional, add ) {
|
||||||
var name;
|
var name;
|
||||||
|
|
||||||
if ( jQuery.isArray( obj ) ) {
|
if ( Array.isArray( obj ) ) {
|
||||||
|
|
||||||
// Serialize array item.
|
// Serialize array item.
|
||||||
jQuery.each( obj, function( i, v ) {
|
jQuery.each( obj, function( i, v ) {
|
||||||
@ -8405,7 +8435,7 @@ jQuery.param = function( a, traditional ) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// If an array was passed in, assume that it is an array of form elements.
|
// If an array was passed in, assume that it is an array of form elements.
|
||||||
if ( jQuery.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {
|
if ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {
|
||||||
|
|
||||||
// Serialize the form elements
|
// Serialize the form elements
|
||||||
jQuery.each( a, function() {
|
jQuery.each( a, function() {
|
||||||
@ -8451,7 +8481,7 @@ jQuery.fn.extend( {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( jQuery.isArray( val ) ) {
|
if ( Array.isArray( val ) ) {
|
||||||
return jQuery.map( val, function( val ) {
|
return jQuery.map( val, function( val ) {
|
||||||
return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
|
return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
|
||||||
} );
|
} );
|
||||||
@ -9876,13 +9906,6 @@ jQuery.expr.pseudos.animated = function( elem ) {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Gets a window from an element
|
|
||||||
*/
|
|
||||||
function getWindow( elem ) {
|
|
||||||
return jQuery.isWindow( elem ) ? elem : elem.nodeType === 9 && elem.defaultView;
|
|
||||||
}
|
|
||||||
|
|
||||||
jQuery.offset = {
|
jQuery.offset = {
|
||||||
setOffset: function( elem, options, i ) {
|
setOffset: function( elem, options, i ) {
|
||||||
var curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition,
|
var curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition,
|
||||||
@ -9947,13 +9970,14 @@ jQuery.fn.extend( {
|
|||||||
} );
|
} );
|
||||||
}
|
}
|
||||||
|
|
||||||
var docElem, win, rect, doc,
|
var doc, docElem, rect, win,
|
||||||
elem = this[ 0 ];
|
elem = this[ 0 ];
|
||||||
|
|
||||||
if ( !elem ) {
|
if ( !elem ) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Return zeros for disconnected and hidden (display: none) elements (gh-2310)
|
||||||
// Support: IE <=11 only
|
// Support: IE <=11 only
|
||||||
// Running getBoundingClientRect on a
|
// Running getBoundingClientRect on a
|
||||||
// disconnected node in IE throws an error
|
// disconnected node in IE throws an error
|
||||||
@ -9963,20 +9987,14 @@ jQuery.fn.extend( {
|
|||||||
|
|
||||||
rect = elem.getBoundingClientRect();
|
rect = elem.getBoundingClientRect();
|
||||||
|
|
||||||
// Make sure element is not hidden (display: none)
|
doc = elem.ownerDocument;
|
||||||
if ( rect.width || rect.height ) {
|
docElem = doc.documentElement;
|
||||||
doc = elem.ownerDocument;
|
win = doc.defaultView;
|
||||||
win = getWindow( doc );
|
|
||||||
docElem = doc.documentElement;
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
top: rect.top + win.pageYOffset - docElem.clientTop,
|
top: rect.top + win.pageYOffset - docElem.clientTop,
|
||||||
left: rect.left + win.pageXOffset - docElem.clientLeft
|
left: rect.left + win.pageXOffset - docElem.clientLeft
|
||||||
};
|
};
|
||||||
}
|
|
||||||
|
|
||||||
// Return zeros for disconnected and hidden elements (gh-2310)
|
|
||||||
return rect;
|
|
||||||
},
|
},
|
||||||
|
|
||||||
position: function() {
|
position: function() {
|
||||||
@ -10002,7 +10020,7 @@ jQuery.fn.extend( {
|
|||||||
|
|
||||||
// Get correct offsets
|
// Get correct offsets
|
||||||
offset = this.offset();
|
offset = this.offset();
|
||||||
if ( !jQuery.nodeName( offsetParent[ 0 ], "html" ) ) {
|
if ( !nodeName( offsetParent[ 0 ], "html" ) ) {
|
||||||
parentOffset = offsetParent.offset();
|
parentOffset = offsetParent.offset();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -10049,7 +10067,14 @@ jQuery.each( { scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function(
|
|||||||
|
|
||||||
jQuery.fn[ method ] = function( val ) {
|
jQuery.fn[ method ] = function( val ) {
|
||||||
return access( this, function( elem, method, val ) {
|
return access( this, function( elem, method, val ) {
|
||||||
var win = getWindow( elem );
|
|
||||||
|
// Coalesce documents and windows
|
||||||
|
var win;
|
||||||
|
if ( jQuery.isWindow( elem ) ) {
|
||||||
|
win = elem;
|
||||||
|
} else if ( elem.nodeType === 9 ) {
|
||||||
|
win = elem.defaultView;
|
||||||
|
}
|
||||||
|
|
||||||
if ( val === undefined ) {
|
if ( val === undefined ) {
|
||||||
return win ? win[ prop ] : elem[ method ];
|
return win ? win[ prop ] : elem[ method ];
|
||||||
@ -10158,7 +10183,16 @@ jQuery.fn.extend( {
|
|||||||
}
|
}
|
||||||
} );
|
} );
|
||||||
|
|
||||||
|
jQuery.holdReady = function( hold ) {
|
||||||
|
if ( hold ) {
|
||||||
|
jQuery.readyWait++;
|
||||||
|
} else {
|
||||||
|
jQuery.ready( true );
|
||||||
|
}
|
||||||
|
};
|
||||||
|
jQuery.isArray = Array.isArray;
|
||||||
jQuery.parseJSON = JSON.parse;
|
jQuery.parseJSON = JSON.parse;
|
||||||
|
jQuery.nodeName = nodeName;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -10215,6 +10249,5 @@ if ( !noGlobal ) {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return jQuery;
|
return jQuery;
|
||||||
} );
|
} );
|
4
openstackdocstheme/theme/openstackdocs/static/js/jquery-3.2.1.min.js
vendored
Normal file
4
openstackdocstheme/theme/openstackdocs/static/js/jquery-3.2.1.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user