jquery-rails 3.1.0 → 3.1.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of jquery-rails might be problematic. Click here for more details.
- checksums.yaml +7 -0
- data/CHANGELOG.md +6 -1
- data/README.md +1 -1
- data/VERSIONS.md +43 -41
- data/jquery-rails.gemspec +2 -2
- data/lib/jquery/rails/version.rb +3 -3
- data/vendor/assets/javascripts/jquery.js +317 -346
- data/vendor/assets/javascripts/jquery.min.js +5 -4
- data/vendor/assets/javascripts/jquery.min.map +1 -1
- data/vendor/assets/javascripts/jquery_ujs.js +73 -26
- metadata +33 -22
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 1600db8b878446c499e08563ee1da26606ff6276
|
4
|
+
data.tar.gz: 55c7dde6ecb3794cc82fc459e3ea9225c7d3daa5
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: b75b2ec02b1d1aa63fb82344542d3c5de4da1557353b393a3d31a417bf70bf2a25eade3b1a20364712cdd863994241ddfe1e7f9e506a3decbb41bc78c158f044
|
7
|
+
data.tar.gz: 9c9c2a90d36aaa6e025859b2ab0cabd4cba00f1d1fc4ccbedb5b6a29648d90dc57896a95fd0b8d035f3dd064153355df97eba0f0f259b3757cad1e00d84dd8a2
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,8 @@
|
|
1
|
+
## 3.1.1 (23 June 2013)
|
2
|
+
|
3
|
+
- Updated to jQuery 1.11.1
|
4
|
+
- Updated to jquery-ujs 1.0.0
|
5
|
+
|
1
6
|
## 3.1.0 (29 January 2014)
|
2
7
|
|
3
8
|
- Updated to jQuery 1.11.0
|
@@ -7,7 +12,7 @@
|
|
7
12
|
## 3.0.4 (10 July 2013)
|
8
13
|
|
9
14
|
- Fixed jQuery source map
|
10
|
-
|
15
|
+
|
11
16
|
## 3.0.3 (10 July 2013)
|
12
17
|
|
13
18
|
- Updated to jQuery 1.10.2
|
data/README.md
CHANGED
data/VERSIONS.md
CHANGED
@@ -1,43 +1,45 @@
|
|
1
1
|
# Bundled Versions
|
2
2
|
|
3
|
-
| Gem | jQuery | jQuery UI |
|
4
|
-
|
5
|
-
| 3.
|
6
|
-
| 3.0
|
7
|
-
| 3.0.
|
8
|
-
| 3.0.
|
9
|
-
| 3.0.
|
10
|
-
| 3.0.
|
11
|
-
|
|
12
|
-
|
|
13
|
-
| 2.
|
14
|
-
| 2.2.
|
15
|
-
| 2.1
|
16
|
-
| 2.
|
17
|
-
| 2.1.
|
18
|
-
| 2.1.1 |
|
19
|
-
| 2.1.
|
20
|
-
| 2.
|
21
|
-
| 2.0
|
22
|
-
| 2.0.
|
23
|
-
| 2.0.
|
24
|
-
|
|
25
|
-
|
|
26
|
-
| 1.0.
|
27
|
-
| 1.0.
|
28
|
-
| 1.0.
|
29
|
-
| 1.0.
|
30
|
-
| 1.0.
|
31
|
-
| 1.0.
|
32
|
-
| 1.0.
|
33
|
-
| 1.0.
|
34
|
-
| 1.0.
|
35
|
-
| 1.0.
|
36
|
-
| 1.0.
|
37
|
-
| 1.0.
|
38
|
-
| 1.0.
|
39
|
-
| 1.0.
|
40
|
-
| 1.0.
|
41
|
-
| 1.0.
|
42
|
-
| 1.0.
|
43
|
-
| 1.0.
|
3
|
+
| Gem | jQuery | jQuery UJS | jQuery UI |
|
4
|
+
|--------|--------|------------| ----------|
|
5
|
+
| 3.1.1 | 1.11.1 | 1.0.0 | - |
|
6
|
+
| 3.1.0 | 1.11.0 | - | - |
|
7
|
+
| 3.0.5 | 1.11.0 | - | - |
|
8
|
+
| 3.0.4 | ↾ | - | - |
|
9
|
+
| 3.0.3 | 1.10.2 | - | - |
|
10
|
+
| 3.0.2 | ↾ | - | - |
|
11
|
+
| 3.0.1 | 1.10.1 | - | - |
|
12
|
+
| 3.0.0 | ↾ | - | - |
|
13
|
+
| 2.3.0 | 1.10.0 | - | 1.10.3 |
|
14
|
+
| 2.2.2 | ↾ | - | ↾ |
|
15
|
+
| 2.2.1 | 1.9.1 | - | ↾ |
|
16
|
+
| 2.2.0 | 1.9.0 | - | ↾ |
|
17
|
+
| 2.1.4 | 1.8.3 | - | 1.9.2 |
|
18
|
+
| 2.1.3 | 1.8.2 | - | ↾ |
|
19
|
+
| 2.1.2 | 1.8.1 | - | ↾ |
|
20
|
+
| 2.1.1 | ↾ | - | ↾ |
|
21
|
+
| 2.1.0 | 1.8.0 | - | 1.8.23 |
|
22
|
+
| 2.0.3 | ↾ | - | ↾ |
|
23
|
+
| 2.0.2 | 1.7.2 | - | 1.8.18 |
|
24
|
+
| 2.0.1 | ↾ | - | ↾ |
|
25
|
+
| 2.0.0 | ↾ | - | ↾ |
|
26
|
+
| 1.0.19 | 1.7.1 | - | ↾ |
|
27
|
+
| 1.0.18 | ↾ | - | ↾ |
|
28
|
+
| 1.0.17 | 1.7.0 | - | ↾ |
|
29
|
+
| 1.0.16 | 1.6.4 | - | 1.8.16 |
|
30
|
+
| 1.0.15 | ↾ | - | ↾ |
|
31
|
+
| 1.0.14 | ↾ | - | ↾ |
|
32
|
+
| 1.0.13 | 1.6.2 | - | 1.8.14 |
|
33
|
+
| 1.0.12 | ↾ | - | ↾ |
|
34
|
+
| 1.0.11 | ↾ | - | ↾ |
|
35
|
+
| 1.0.10 | ↾ | - | ↾ |
|
36
|
+
| 1.0.9 | ↾ | - | ↾ |
|
37
|
+
| 1.0.8 | ↾ | - | ↾ |
|
38
|
+
| 1.0.7 | ↾ | - | ↾ |
|
39
|
+
| 1.0.6 | ↾ | - | ↾ |
|
40
|
+
| 1.0.5 | ↾ | - | ↾ |
|
41
|
+
| 1.0.4 | ↾ | - | ↾ |
|
42
|
+
| 1.0.3 | 1.6.1 | - | ↾ |
|
43
|
+
| 1.0.2 | ↾ | - | ↾ |
|
44
|
+
| 1.0.1 | ↾ | - | 1.8.12 |
|
45
|
+
| 1.0.0 | 1.6.0 | - | - |
|
data/jquery-rails.gemspec
CHANGED
@@ -8,8 +8,8 @@ Gem::Specification.new do |s|
|
|
8
8
|
s.authors = ["André Arko"]
|
9
9
|
s.email = ["andre@arko.net"]
|
10
10
|
s.homepage = "http://rubygems.org/gems/jquery-rails"
|
11
|
-
s.summary = "Use jQuery with Rails 3"
|
12
|
-
s.description = "This gem provides jQuery and the jQuery-ujs driver for your Rails 3 application."
|
11
|
+
s.summary = "Use jQuery with Rails 3+"
|
12
|
+
s.description = "This gem provides jQuery and the jQuery-ujs driver for your Rails 3+ application."
|
13
13
|
s.license = "MIT"
|
14
14
|
|
15
15
|
s.required_rubygems_version = ">= 1.3.6"
|
data/lib/jquery/rails/version.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* jQuery JavaScript Library v1.11.
|
2
|
+
* jQuery JavaScript Library v1.11.1
|
3
3
|
* http://jquery.com/
|
4
4
|
*
|
5
5
|
* Includes Sizzle.js
|
@@ -9,7 +9,7 @@
|
|
9
9
|
* Released under the MIT license
|
10
10
|
* http://jquery.org/license
|
11
11
|
*
|
12
|
-
* Date: 2014-
|
12
|
+
* Date: 2014-05-01T17:42Z
|
13
13
|
*/
|
14
14
|
|
15
15
|
(function( global, factory ) {
|
@@ -59,14 +59,12 @@ var toString = class2type.toString;
|
|
59
59
|
|
60
60
|
var hasOwn = class2type.hasOwnProperty;
|
61
61
|
|
62
|
-
var trim = "".trim;
|
63
|
-
|
64
62
|
var support = {};
|
65
63
|
|
66
64
|
|
67
65
|
|
68
66
|
var
|
69
|
-
version = "1.11.
|
67
|
+
version = "1.11.1",
|
70
68
|
|
71
69
|
// Define a local copy of jQuery
|
72
70
|
jQuery = function( selector, context ) {
|
@@ -75,7 +73,8 @@ var
|
|
75
73
|
return new jQuery.fn.init( selector, context );
|
76
74
|
},
|
77
75
|
|
78
|
-
//
|
76
|
+
// Support: Android<4.1, IE<9
|
77
|
+
// Make sure we trim BOM and NBSP
|
79
78
|
rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
|
80
79
|
|
81
80
|
// Matches dashed string for camelizing
|
@@ -108,10 +107,10 @@ jQuery.fn = jQuery.prototype = {
|
|
108
107
|
get: function( num ) {
|
109
108
|
return num != null ?
|
110
109
|
|
111
|
-
// Return
|
110
|
+
// Return just the one element from the set
|
112
111
|
( num < 0 ? this[ num + this.length ] : this[ num ] ) :
|
113
112
|
|
114
|
-
// Return
|
113
|
+
// Return all the elements in a clean array
|
115
114
|
slice.call( this );
|
116
115
|
},
|
117
116
|
|
@@ -270,7 +269,7 @@ jQuery.extend({
|
|
270
269
|
// parseFloat NaNs numeric-cast false positives (null|true|false|"")
|
271
270
|
// ...but misinterprets leading-number strings, particularly hex literals ("0x...")
|
272
271
|
// subtraction forces infinities to NaN
|
273
|
-
return obj - parseFloat( obj ) >= 0;
|
272
|
+
return !jQuery.isArray( obj ) && obj - parseFloat( obj ) >= 0;
|
274
273
|
},
|
275
274
|
|
276
275
|
isEmptyObject: function( obj ) {
|
@@ -401,20 +400,12 @@ jQuery.extend({
|
|
401
400
|
return obj;
|
402
401
|
},
|
403
402
|
|
404
|
-
//
|
405
|
-
trim:
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
} :
|
411
|
-
|
412
|
-
// Otherwise use our own trimming functionality
|
413
|
-
function( text ) {
|
414
|
-
return text == null ?
|
415
|
-
"" :
|
416
|
-
( text + "" ).replace( rtrim, "" );
|
417
|
-
},
|
403
|
+
// Support: Android<4.1, IE<9
|
404
|
+
trim: function( text ) {
|
405
|
+
return text == null ?
|
406
|
+
"" :
|
407
|
+
( text + "" ).replace( rtrim, "" );
|
408
|
+
},
|
418
409
|
|
419
410
|
// results is for internal usage only
|
420
411
|
makeArray: function( arr, results ) {
|
@@ -593,14 +584,14 @@ function isArraylike( obj ) {
|
|
593
584
|
}
|
594
585
|
var Sizzle =
|
595
586
|
/*!
|
596
|
-
* Sizzle CSS Selector Engine v1.10.
|
587
|
+
* Sizzle CSS Selector Engine v1.10.19
|
597
588
|
* http://sizzlejs.com/
|
598
589
|
*
|
599
590
|
* Copyright 2013 jQuery Foundation, Inc. and other contributors
|
600
591
|
* Released under the MIT license
|
601
592
|
* http://jquery.org/license
|
602
593
|
*
|
603
|
-
* Date: 2014-
|
594
|
+
* Date: 2014-04-18
|
604
595
|
*/
|
605
596
|
(function( window ) {
|
606
597
|
|
@@ -609,7 +600,9 @@ var i,
|
|
609
600
|
Expr,
|
610
601
|
getText,
|
611
602
|
isXML,
|
603
|
+
tokenize,
|
612
604
|
compile,
|
605
|
+
select,
|
613
606
|
outermostContext,
|
614
607
|
sortInput,
|
615
608
|
hasDuplicate,
|
@@ -676,17 +669,23 @@ var i,
|
|
676
669
|
// Proper syntax: http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
|
677
670
|
identifier = characterEncoding.replace( "w", "w#" ),
|
678
671
|
|
679
|
-
//
|
680
|
-
attributes = "\\[" + whitespace + "*(" + characterEncoding + ")" + whitespace +
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
|
685
|
-
|
686
|
-
|
687
|
-
|
688
|
-
|
689
|
-
|
672
|
+
// Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors
|
673
|
+
attributes = "\\[" + whitespace + "*(" + characterEncoding + ")(?:" + whitespace +
|
674
|
+
// Operator (capture 2)
|
675
|
+
"*([*^$|!~]?=)" + whitespace +
|
676
|
+
// "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]"
|
677
|
+
"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace +
|
678
|
+
"*\\]",
|
679
|
+
|
680
|
+
pseudos = ":(" + characterEncoding + ")(?:\\((" +
|
681
|
+
// To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:
|
682
|
+
// 1. quoted (capture 3; capture 4 or capture 5)
|
683
|
+
"('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" +
|
684
|
+
// 2. simple (capture 6)
|
685
|
+
"((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" +
|
686
|
+
// 3. anything else (capture 2)
|
687
|
+
".*" +
|
688
|
+
")\\)|)",
|
690
689
|
|
691
690
|
// Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter
|
692
691
|
rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ),
|
@@ -731,7 +730,7 @@ var i,
|
|
731
730
|
funescape = function( _, escaped, escapedWhitespace ) {
|
732
731
|
var high = "0x" + escaped - 0x10000;
|
733
732
|
// NaN means non-codepoint
|
734
|
-
// Support: Firefox
|
733
|
+
// Support: Firefox<24
|
735
734
|
// Workaround erroneous numeric interpretation of +"0x"
|
736
735
|
return high !== high || escapedWhitespace ?
|
737
736
|
escaped :
|
@@ -1127,7 +1126,7 @@ setDocument = Sizzle.setDocument = function( node ) {
|
|
1127
1126
|
var m = context.getElementById( id );
|
1128
1127
|
// Check parentNode to catch when Blackberry 4.6 returns
|
1129
1128
|
// nodes that are no longer in the document #6963
|
1130
|
-
return m && m.parentNode ? [m] : [];
|
1129
|
+
return m && m.parentNode ? [ m ] : [];
|
1131
1130
|
}
|
1132
1131
|
};
|
1133
1132
|
Expr.filter["ID"] = function( id ) {
|
@@ -1207,11 +1206,13 @@ setDocument = Sizzle.setDocument = function( node ) {
|
|
1207
1206
|
// setting a boolean content attribute,
|
1208
1207
|
// since its presence should be enough
|
1209
1208
|
// http://bugs.jquery.com/ticket/12359
|
1210
|
-
div.innerHTML = "<select
|
1209
|
+
div.innerHTML = "<select msallowclip=''><option selected=''></option></select>";
|
1211
1210
|
|
1212
|
-
// Support: IE8, Opera
|
1211
|
+
// Support: IE8, Opera 11-12.16
|
1213
1212
|
// Nothing should be selected when empty strings follow ^= or $= or *=
|
1214
|
-
|
1213
|
+
// The test attribute must be unknown in Opera but "safe" for WinRT
|
1214
|
+
// http://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section
|
1215
|
+
if ( div.querySelectorAll("[msallowclip^='']").length ) {
|
1215
1216
|
rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" );
|
1216
1217
|
}
|
1217
1218
|
|
@@ -1254,7 +1255,8 @@ setDocument = Sizzle.setDocument = function( node ) {
|
|
1254
1255
|
});
|
1255
1256
|
}
|
1256
1257
|
|
1257
|
-
if ( (support.matchesSelector = rnative.test( (matches = docElem.
|
1258
|
+
if ( (support.matchesSelector = rnative.test( (matches = docElem.matches ||
|
1259
|
+
docElem.webkitMatchesSelector ||
|
1258
1260
|
docElem.mozMatchesSelector ||
|
1259
1261
|
docElem.oMatchesSelector ||
|
1260
1262
|
docElem.msMatchesSelector) )) ) {
|
@@ -1435,7 +1437,7 @@ Sizzle.matchesSelector = function( elem, expr ) {
|
|
1435
1437
|
} catch(e) {}
|
1436
1438
|
}
|
1437
1439
|
|
1438
|
-
return Sizzle( expr, document, null, [elem] ).length > 0;
|
1440
|
+
return Sizzle( expr, document, null, [ elem ] ).length > 0;
|
1439
1441
|
};
|
1440
1442
|
|
1441
1443
|
Sizzle.contains = function( context, elem ) {
|
@@ -1564,7 +1566,7 @@ Expr = Sizzle.selectors = {
|
|
1564
1566
|
match[1] = match[1].replace( runescape, funescape );
|
1565
1567
|
|
1566
1568
|
// Move the given value to match[3] whether quoted or unquoted
|
1567
|
-
match[3] = ( match[4] || match[5] || "" ).replace( runescape, funescape );
|
1569
|
+
match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape );
|
1568
1570
|
|
1569
1571
|
if ( match[2] === "~=" ) {
|
1570
1572
|
match[3] = " " + match[3] + " ";
|
@@ -1607,15 +1609,15 @@ Expr = Sizzle.selectors = {
|
|
1607
1609
|
|
1608
1610
|
"PSEUDO": function( match ) {
|
1609
1611
|
var excess,
|
1610
|
-
unquoted = !match[
|
1612
|
+
unquoted = !match[6] && match[2];
|
1611
1613
|
|
1612
1614
|
if ( matchExpr["CHILD"].test( match[0] ) ) {
|
1613
1615
|
return null;
|
1614
1616
|
}
|
1615
1617
|
|
1616
1618
|
// Accept quoted arguments as-is
|
1617
|
-
if ( match[3]
|
1618
|
-
match[2] = match[4];
|
1619
|
+
if ( match[3] ) {
|
1620
|
+
match[2] = match[4] || match[5] || "";
|
1619
1621
|
|
1620
1622
|
// Strip excess characters from unquoted arguments
|
1621
1623
|
} else if ( unquoted && rpseudo.test( unquoted ) &&
|
@@ -2020,7 +2022,7 @@ function setFilters() {}
|
|
2020
2022
|
setFilters.prototype = Expr.filters = Expr.pseudos;
|
2021
2023
|
Expr.setFilters = new setFilters();
|
2022
2024
|
|
2023
|
-
|
2025
|
+
tokenize = Sizzle.tokenize = function( selector, parseOnly ) {
|
2024
2026
|
var matched, match, tokens, type,
|
2025
2027
|
soFar, groups, preFilters,
|
2026
2028
|
cached = tokenCache[ selector + " " ];
|
@@ -2085,7 +2087,7 @@ function tokenize( selector, parseOnly ) {
|
|
2085
2087
|
Sizzle.error( selector ) :
|
2086
2088
|
// Cache the tokens
|
2087
2089
|
tokenCache( selector, groups ).slice( 0 );
|
2088
|
-
}
|
2090
|
+
};
|
2089
2091
|
|
2090
2092
|
function toSelector( tokens ) {
|
2091
2093
|
var i = 0,
|
@@ -2164,6 +2166,15 @@ function elementMatcher( matchers ) {
|
|
2164
2166
|
matchers[0];
|
2165
2167
|
}
|
2166
2168
|
|
2169
|
+
function multipleContexts( selector, contexts, results ) {
|
2170
|
+
var i = 0,
|
2171
|
+
len = contexts.length;
|
2172
|
+
for ( ; i < len; i++ ) {
|
2173
|
+
Sizzle( selector, contexts[i], results );
|
2174
|
+
}
|
2175
|
+
return results;
|
2176
|
+
}
|
2177
|
+
|
2167
2178
|
function condense( unmatched, map, filter, context, xml ) {
|
2168
2179
|
var elem,
|
2169
2180
|
newUnmatched = [],
|
@@ -2432,7 +2443,7 @@ function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
|
|
2432
2443
|
superMatcher;
|
2433
2444
|
}
|
2434
2445
|
|
2435
|
-
compile = Sizzle.compile = function( selector,
|
2446
|
+
compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) {
|
2436
2447
|
var i,
|
2437
2448
|
setMatchers = [],
|
2438
2449
|
elementMatchers = [],
|
@@ -2440,12 +2451,12 @@ compile = Sizzle.compile = function( selector, group /* Internal Use Only */ ) {
|
|
2440
2451
|
|
2441
2452
|
if ( !cached ) {
|
2442
2453
|
// Generate a function of recursive functions that can be used to check each element
|
2443
|
-
if ( !
|
2444
|
-
|
2454
|
+
if ( !match ) {
|
2455
|
+
match = tokenize( selector );
|
2445
2456
|
}
|
2446
|
-
i =
|
2457
|
+
i = match.length;
|
2447
2458
|
while ( i-- ) {
|
2448
|
-
cached = matcherFromTokens(
|
2459
|
+
cached = matcherFromTokens( match[i] );
|
2449
2460
|
if ( cached[ expando ] ) {
|
2450
2461
|
setMatchers.push( cached );
|
2451
2462
|
} else {
|
@@ -2455,74 +2466,83 @@ compile = Sizzle.compile = function( selector, group /* Internal Use Only */ ) {
|
|
2455
2466
|
|
2456
2467
|
// Cache the compiled function
|
2457
2468
|
cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );
|
2469
|
+
|
2470
|
+
// Save selector and tokenization
|
2471
|
+
cached.selector = selector;
|
2458
2472
|
}
|
2459
2473
|
return cached;
|
2460
2474
|
};
|
2461
2475
|
|
2462
|
-
|
2463
|
-
|
2464
|
-
|
2465
|
-
|
2466
|
-
|
2467
|
-
|
2468
|
-
|
2469
|
-
}
|
2470
|
-
|
2471
|
-
|
2476
|
+
/**
|
2477
|
+
* A low-level selection function that works with Sizzle's compiled
|
2478
|
+
* selector functions
|
2479
|
+
* @param {String|Function} selector A selector or a pre-compiled
|
2480
|
+
* selector function built with Sizzle.compile
|
2481
|
+
* @param {Element} context
|
2482
|
+
* @param {Array} [results]
|
2483
|
+
* @param {Array} [seed] A set of elements to match against
|
2484
|
+
*/
|
2485
|
+
select = Sizzle.select = function( selector, context, results, seed ) {
|
2472
2486
|
var i, tokens, token, type, find,
|
2473
|
-
|
2487
|
+
compiled = typeof selector === "function" && selector,
|
2488
|
+
match = !seed && tokenize( (selector = compiled.selector || selector) );
|
2489
|
+
|
2490
|
+
results = results || [];
|
2474
2491
|
|
2475
|
-
if
|
2476
|
-
|
2477
|
-
if ( match.length === 1 ) {
|
2492
|
+
// Try to minimize operations if there is no seed and only one group
|
2493
|
+
if ( match.length === 1 ) {
|
2478
2494
|
|
2479
|
-
|
2480
|
-
|
2481
|
-
|
2482
|
-
|
2483
|
-
|
2495
|
+
// Take a shortcut and set the context if the root selector is an ID
|
2496
|
+
tokens = match[0] = match[0].slice( 0 );
|
2497
|
+
if ( tokens.length > 2 && (token = tokens[0]).type === "ID" &&
|
2498
|
+
support.getById && context.nodeType === 9 && documentIsHTML &&
|
2499
|
+
Expr.relative[ tokens[1].type ] ) {
|
2484
2500
|
|
2485
|
-
|
2486
|
-
|
2487
|
-
|
2488
|
-
|
2489
|
-
|
2501
|
+
context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0];
|
2502
|
+
if ( !context ) {
|
2503
|
+
return results;
|
2504
|
+
|
2505
|
+
// Precompiled matchers will still verify ancestry, so step up a level
|
2506
|
+
} else if ( compiled ) {
|
2507
|
+
context = context.parentNode;
|
2490
2508
|
}
|
2491
2509
|
|
2492
|
-
|
2493
|
-
|
2494
|
-
while ( i-- ) {
|
2495
|
-
token = tokens[i];
|
2510
|
+
selector = selector.slice( tokens.shift().value.length );
|
2511
|
+
}
|
2496
2512
|
|
2497
|
-
|
2498
|
-
|
2499
|
-
|
2500
|
-
|
2501
|
-
if ( (find = Expr.find[ type ]) ) {
|
2502
|
-
// Search, expanding context for leading sibling combinators
|
2503
|
-
if ( (seed = find(
|
2504
|
-
token.matches[0].replace( runescape, funescape ),
|
2505
|
-
rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context
|
2506
|
-
)) ) {
|
2507
|
-
|
2508
|
-
// If seed is empty or no tokens remain, we can return early
|
2509
|
-
tokens.splice( i, 1 );
|
2510
|
-
selector = seed.length && toSelector( tokens );
|
2511
|
-
if ( !selector ) {
|
2512
|
-
push.apply( results, seed );
|
2513
|
-
return results;
|
2514
|
-
}
|
2513
|
+
// Fetch a seed set for right-to-left matching
|
2514
|
+
i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length;
|
2515
|
+
while ( i-- ) {
|
2516
|
+
token = tokens[i];
|
2515
2517
|
|
2516
|
-
|
2518
|
+
// Abort if we hit a combinator
|
2519
|
+
if ( Expr.relative[ (type = token.type) ] ) {
|
2520
|
+
break;
|
2521
|
+
}
|
2522
|
+
if ( (find = Expr.find[ type ]) ) {
|
2523
|
+
// Search, expanding context for leading sibling combinators
|
2524
|
+
if ( (seed = find(
|
2525
|
+
token.matches[0].replace( runescape, funescape ),
|
2526
|
+
rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context
|
2527
|
+
)) ) {
|
2528
|
+
|
2529
|
+
// If seed is empty or no tokens remain, we can return early
|
2530
|
+
tokens.splice( i, 1 );
|
2531
|
+
selector = seed.length && toSelector( tokens );
|
2532
|
+
if ( !selector ) {
|
2533
|
+
push.apply( results, seed );
|
2534
|
+
return results;
|
2517
2535
|
}
|
2536
|
+
|
2537
|
+
break;
|
2518
2538
|
}
|
2519
2539
|
}
|
2520
2540
|
}
|
2521
2541
|
}
|
2522
2542
|
|
2523
|
-
// Compile and execute a filtering function
|
2543
|
+
// Compile and execute a filtering function if one is not provided
|
2524
2544
|
// Provide `match` to avoid retokenization if we modified the selector above
|
2525
|
-
compile( selector, match )(
|
2545
|
+
( compiled || compile( selector, match ) )(
|
2526
2546
|
seed,
|
2527
2547
|
context,
|
2528
2548
|
!documentIsHTML,
|
@@ -2530,7 +2550,7 @@ function select( selector, context, results, seed ) {
|
|
2530
2550
|
rsibling.test( selector ) && testContext( context.parentNode ) || context
|
2531
2551
|
);
|
2532
2552
|
return results;
|
2533
|
-
}
|
2553
|
+
};
|
2534
2554
|
|
2535
2555
|
// One-time assignments
|
2536
2556
|
|
@@ -3423,8 +3443,9 @@ jQuery.extend({
|
|
3423
3443
|
readyList.resolveWith( document, [ jQuery ] );
|
3424
3444
|
|
3425
3445
|
// Trigger any bound ready events
|
3426
|
-
if ( jQuery.fn.
|
3427
|
-
jQuery( document ).
|
3446
|
+
if ( jQuery.fn.triggerHandler ) {
|
3447
|
+
jQuery( document ).triggerHandler( "ready" );
|
3448
|
+
jQuery( document ).off( "ready" );
|
3428
3449
|
}
|
3429
3450
|
}
|
3430
3451
|
});
|
@@ -3532,23 +3553,21 @@ support.ownLast = i !== "0";
|
|
3532
3553
|
// false until the test is run
|
3533
3554
|
support.inlineBlockNeedsLayout = false;
|
3534
3555
|
|
3556
|
+
// Execute ASAP in case we need to set body.style.zoom
|
3535
3557
|
jQuery(function() {
|
3536
|
-
//
|
3537
|
-
|
3558
|
+
// Minified: var a,b,c,d
|
3559
|
+
var val, div, body, container;
|
3538
3560
|
|
3539
|
-
|
3540
|
-
|
3541
|
-
|
3542
|
-
if ( !body ) {
|
3561
|
+
body = document.getElementsByTagName( "body" )[ 0 ];
|
3562
|
+
if ( !body || !body.style ) {
|
3543
3563
|
// Return for frameset docs that don't have a body
|
3544
3564
|
return;
|
3545
3565
|
}
|
3546
3566
|
|
3547
3567
|
// Setup
|
3548
|
-
container = document.createElement( "div" );
|
3549
|
-
container.style.cssText = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px";
|
3550
|
-
|
3551
3568
|
div = document.createElement( "div" );
|
3569
|
+
container = document.createElement( "div" );
|
3570
|
+
container.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px";
|
3552
3571
|
body.appendChild( container ).appendChild( div );
|
3553
3572
|
|
3554
3573
|
if ( typeof div.style.zoom !== strundefined ) {
|
@@ -3556,9 +3575,10 @@ jQuery(function() {
|
|
3556
3575
|
// Check if natively block-level elements act like inline-block
|
3557
3576
|
// elements when setting their display to 'inline' and giving
|
3558
3577
|
// them layout
|
3559
|
-
div.style.cssText = "
|
3578
|
+
div.style.cssText = "display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1";
|
3560
3579
|
|
3561
|
-
|
3580
|
+
support.inlineBlockNeedsLayout = val = div.offsetWidth === 3;
|
3581
|
+
if ( val ) {
|
3562
3582
|
// Prevent IE 6 from affecting layout for positioned elements #11048
|
3563
3583
|
// Prevent IE from shrinking the body in IE 7 mode #12869
|
3564
3584
|
// Support: IE<8
|
@@ -3567,9 +3587,6 @@ jQuery(function() {
|
|
3567
3587
|
}
|
3568
3588
|
|
3569
3589
|
body.removeChild( container );
|
3570
|
-
|
3571
|
-
// Null elements to avoid leaks in IE
|
3572
|
-
container = div = null;
|
3573
3590
|
});
|
3574
3591
|
|
3575
3592
|
|
@@ -3892,12 +3909,15 @@ jQuery.fn.extend({
|
|
3892
3909
|
if ( elem.nodeType === 1 && !jQuery._data( elem, "parsedAttrs" ) ) {
|
3893
3910
|
i = attrs.length;
|
3894
3911
|
while ( i-- ) {
|
3895
|
-
name = attrs[i].name;
|
3896
3912
|
|
3897
|
-
|
3898
|
-
|
3899
|
-
|
3900
|
-
|
3913
|
+
// Support: IE11+
|
3914
|
+
// The attrs elements can be null (#14894)
|
3915
|
+
if ( attrs[ i ] ) {
|
3916
|
+
name = attrs[ i ].name;
|
3917
|
+
if ( name.indexOf( "data-" ) === 0 ) {
|
3918
|
+
name = jQuery.camelCase( name.slice(5) );
|
3919
|
+
dataAttr( elem, name, data[ name ] );
|
3920
|
+
}
|
3901
3921
|
}
|
3902
3922
|
}
|
3903
3923
|
jQuery._data( elem, "parsedAttrs", true );
|
@@ -4137,13 +4157,13 @@ var rcheckableType = (/^(?:checkbox|radio)$/i);
|
|
4137
4157
|
|
4138
4158
|
|
4139
4159
|
(function() {
|
4140
|
-
|
4141
|
-
|
4142
|
-
|
4160
|
+
// Minified: var a,b,c
|
4161
|
+
var input = document.createElement( "input" ),
|
4162
|
+
div = document.createElement( "div" ),
|
4163
|
+
fragment = document.createDocumentFragment();
|
4143
4164
|
|
4144
4165
|
// Setup
|
4145
|
-
div.
|
4146
|
-
div.innerHTML = " <link/><table></table><a href='/a'>a</a>";
|
4166
|
+
div.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>";
|
4147
4167
|
|
4148
4168
|
// IE strips leading whitespace when .innerHTML is used
|
4149
4169
|
support.leadingWhitespace = div.firstChild.nodeType === 3;
|
@@ -4203,9 +4223,6 @@ var rcheckableType = (/^(?:checkbox|radio)$/i);
|
|
4203
4223
|
support.deleteExpando = false;
|
4204
4224
|
}
|
4205
4225
|
}
|
4206
|
-
|
4207
|
-
// Null elements to avoid leaks in IE.
|
4208
|
-
fragment = div = input = null;
|
4209
4226
|
})();
|
4210
4227
|
|
4211
4228
|
|
@@ -4231,7 +4248,7 @@ var rcheckableType = (/^(?:checkbox|radio)$/i);
|
|
4231
4248
|
|
4232
4249
|
var rformElems = /^(?:input|select|textarea)$/i,
|
4233
4250
|
rkeyEvent = /^key/,
|
4234
|
-
rmouseEvent = /^(?:mouse|contextmenu)|click/,
|
4251
|
+
rmouseEvent = /^(?:mouse|pointer|contextmenu)|click/,
|
4235
4252
|
rfocusMorph = /^(?:focusinfocus|focusoutblur)$/,
|
4236
4253
|
rtypenamespace = /^([^.]*)(?:\.(.+)|)$/;
|
4237
4254
|
|
@@ -4834,8 +4851,9 @@ jQuery.event = {
|
|
4834
4851
|
beforeunload: {
|
4835
4852
|
postDispatch: function( event ) {
|
4836
4853
|
|
4837
|
-
//
|
4838
|
-
if
|
4854
|
+
// Support: Firefox 20+
|
4855
|
+
// Firefox doesn't alert if the returnValue field is not set.
|
4856
|
+
if ( event.result !== undefined && event.originalEvent ) {
|
4839
4857
|
event.originalEvent.returnValue = event.result;
|
4840
4858
|
}
|
4841
4859
|
}
|
@@ -4901,11 +4919,9 @@ jQuery.Event = function( src, props ) {
|
|
4901
4919
|
// Events bubbling up the document may have been marked as prevented
|
4902
4920
|
// by a handler lower down the tree; reflect the correct value.
|
4903
4921
|
this.isDefaultPrevented = src.defaultPrevented ||
|
4904
|
-
src.defaultPrevented === undefined &&
|
4905
|
-
// Support: IE < 9
|
4906
|
-
src.returnValue === false
|
4907
|
-
// Support: Android < 4.0
|
4908
|
-
src.getPreventDefault && src.getPreventDefault() ) ?
|
4922
|
+
src.defaultPrevented === undefined &&
|
4923
|
+
// Support: IE < 9, Android < 4.0
|
4924
|
+
src.returnValue === false ?
|
4909
4925
|
returnTrue :
|
4910
4926
|
returnFalse;
|
4911
4927
|
|
@@ -4968,7 +4984,14 @@ jQuery.Event.prototype = {
|
|
4968
4984
|
e.cancelBubble = true;
|
4969
4985
|
},
|
4970
4986
|
stopImmediatePropagation: function() {
|
4987
|
+
var e = this.originalEvent;
|
4988
|
+
|
4971
4989
|
this.isImmediatePropagationStopped = returnTrue;
|
4990
|
+
|
4991
|
+
if ( e && e.stopImmediatePropagation ) {
|
4992
|
+
e.stopImmediatePropagation();
|
4993
|
+
}
|
4994
|
+
|
4972
4995
|
this.stopPropagation();
|
4973
4996
|
}
|
4974
4997
|
};
|
@@ -4976,7 +4999,9 @@ jQuery.Event.prototype = {
|
|
4976
4999
|
// Create mouseenter/leave events using mouseover/out and event-time checks
|
4977
5000
|
jQuery.each({
|
4978
5001
|
mouseenter: "mouseover",
|
4979
|
-
mouseleave: "mouseout"
|
5002
|
+
mouseleave: "mouseout",
|
5003
|
+
pointerenter: "pointerover",
|
5004
|
+
pointerleave: "pointerout"
|
4980
5005
|
}, function( orig, fix ) {
|
4981
5006
|
jQuery.event.special[ orig ] = {
|
4982
5007
|
delegateType: fix,
|
@@ -5980,14 +6005,15 @@ var iframe,
|
|
5980
6005
|
*/
|
5981
6006
|
// Called only from within defaultDisplay
|
5982
6007
|
function actualDisplay( name, doc ) {
|
5983
|
-
var
|
6008
|
+
var style,
|
6009
|
+
elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ),
|
5984
6010
|
|
5985
6011
|
// getDefaultComputedStyle might be reliably used only on attached element
|
5986
|
-
display = window.getDefaultComputedStyle ?
|
6012
|
+
display = window.getDefaultComputedStyle && ( style = window.getDefaultComputedStyle( elem[ 0 ] ) ) ?
|
5987
6013
|
|
5988
6014
|
// Use of this method is a temporary fix (more like optmization) until something better comes along,
|
5989
6015
|
// since it was removed from specification and supported only in FF
|
5990
|
-
|
6016
|
+
style.display : jQuery.css( elem[ 0 ], "display" );
|
5991
6017
|
|
5992
6018
|
// We don't have any data stored on the element,
|
5993
6019
|
// so use "detach" method as fast way to get rid of the element
|
@@ -6033,68 +6059,47 @@ function defaultDisplay( nodeName ) {
|
|
6033
6059
|
|
6034
6060
|
|
6035
6061
|
(function() {
|
6036
|
-
var
|
6037
|
-
div = document.createElement( "div" ),
|
6038
|
-
divReset =
|
6039
|
-
"-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;" +
|
6040
|
-
"display:block;padding:0;margin:0;border:0";
|
6041
|
-
|
6042
|
-
// Setup
|
6043
|
-
div.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>";
|
6044
|
-
a = div.getElementsByTagName( "a" )[ 0 ];
|
6045
|
-
|
6046
|
-
a.style.cssText = "float:left;opacity:.5";
|
6047
|
-
|
6048
|
-
// Make sure that element opacity exists
|
6049
|
-
// (IE uses filter instead)
|
6050
|
-
// Use a regex to work around a WebKit issue. See #5145
|
6051
|
-
support.opacity = /^0.5/.test( a.style.opacity );
|
6052
|
-
|
6053
|
-
// Verify style float existence
|
6054
|
-
// (IE uses styleFloat instead of cssFloat)
|
6055
|
-
support.cssFloat = !!a.style.cssFloat;
|
6056
|
-
|
6057
|
-
div.style.backgroundClip = "content-box";
|
6058
|
-
div.cloneNode( true ).style.backgroundClip = "";
|
6059
|
-
support.clearCloneStyle = div.style.backgroundClip === "content-box";
|
6060
|
-
|
6061
|
-
// Null elements to avoid leaks in IE.
|
6062
|
-
a = div = null;
|
6062
|
+
var shrinkWrapBlocksVal;
|
6063
6063
|
|
6064
6064
|
support.shrinkWrapBlocks = function() {
|
6065
|
-
|
6066
|
-
|
6067
|
-
|
6068
|
-
body = document.getElementsByTagName( "body" )[ 0 ];
|
6069
|
-
if ( !body ) {
|
6070
|
-
// Test fired too early or in an unsupported environment, exit.
|
6071
|
-
return;
|
6072
|
-
}
|
6073
|
-
|
6074
|
-
containerStyles = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px";
|
6075
|
-
container = document.createElement( "div" );
|
6076
|
-
div = document.createElement( "div" );
|
6065
|
+
if ( shrinkWrapBlocksVal != null ) {
|
6066
|
+
return shrinkWrapBlocksVal;
|
6067
|
+
}
|
6077
6068
|
|
6078
|
-
|
6069
|
+
// Will be changed later if needed.
|
6070
|
+
shrinkWrapBlocksVal = false;
|
6079
6071
|
|
6080
|
-
|
6081
|
-
|
6072
|
+
// Minified: var b,c,d
|
6073
|
+
var div, body, container;
|
6082
6074
|
|
6083
|
-
|
6084
|
-
|
6085
|
-
|
6086
|
-
|
6087
|
-
|
6088
|
-
div.firstChild.style.width = "5px";
|
6089
|
-
shrinkWrapBlocksVal = div.offsetWidth !== 3;
|
6090
|
-
}
|
6075
|
+
body = document.getElementsByTagName( "body" )[ 0 ];
|
6076
|
+
if ( !body || !body.style ) {
|
6077
|
+
// Test fired too early or in an unsupported environment, exit.
|
6078
|
+
return;
|
6079
|
+
}
|
6091
6080
|
|
6092
|
-
|
6081
|
+
// Setup
|
6082
|
+
div = document.createElement( "div" );
|
6083
|
+
container = document.createElement( "div" );
|
6084
|
+
container.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px";
|
6085
|
+
body.appendChild( container ).appendChild( div );
|
6093
6086
|
|
6094
|
-
|
6095
|
-
|
6087
|
+
// Support: IE6
|
6088
|
+
// Check if elements with layout shrink-wrap their children
|
6089
|
+
if ( typeof div.style.zoom !== strundefined ) {
|
6090
|
+
// Reset CSS: box-sizing; display; margin; border
|
6091
|
+
div.style.cssText =
|
6092
|
+
// Support: Firefox<29, Android 2.3
|
6093
|
+
// Vendor-prefix box-sizing
|
6094
|
+
"-webkit-box-sizing:content-box;-moz-box-sizing:content-box;" +
|
6095
|
+
"box-sizing:content-box;display:block;margin:0;border:0;" +
|
6096
|
+
"padding:1px;width:1px;zoom:1";
|
6097
|
+
div.appendChild( document.createElement( "div" ) ).style.width = "5px";
|
6098
|
+
shrinkWrapBlocksVal = div.offsetWidth !== 3;
|
6096
6099
|
}
|
6097
6100
|
|
6101
|
+
body.removeChild( container );
|
6102
|
+
|
6098
6103
|
return shrinkWrapBlocksVal;
|
6099
6104
|
};
|
6100
6105
|
|
@@ -6242,92 +6247,46 @@ function addGetHookIf( conditionFn, hookFn ) {
|
|
6242
6247
|
|
6243
6248
|
|
6244
6249
|
(function() {
|
6245
|
-
var
|
6246
|
-
|
6247
|
-
|
6248
|
-
containerStyles = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px",
|
6249
|
-
divReset =
|
6250
|
-
"-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;" +
|
6251
|
-
"display:block;padding:0;margin:0;border:0";
|
6250
|
+
// Minified: var b,c,d,e,f,g, h,i
|
6251
|
+
var div, style, a, pixelPositionVal, boxSizingReliableVal,
|
6252
|
+
reliableHiddenOffsetsVal, reliableMarginRightVal;
|
6252
6253
|
|
6253
6254
|
// Setup
|
6255
|
+
div = document.createElement( "div" );
|
6254
6256
|
div.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>";
|
6255
6257
|
a = div.getElementsByTagName( "a" )[ 0 ];
|
6258
|
+
style = a && a.style;
|
6256
6259
|
|
6257
|
-
|
6260
|
+
// Finish early in limited (non-browser) environments
|
6261
|
+
if ( !style ) {
|
6262
|
+
return;
|
6263
|
+
}
|
6258
6264
|
|
6259
|
-
|
6260
|
-
|
6261
|
-
//
|
6262
|
-
|
6265
|
+
style.cssText = "float:left;opacity:.5";
|
6266
|
+
|
6267
|
+
// Support: IE<9
|
6268
|
+
// Make sure that element opacity exists (as opposed to filter)
|
6269
|
+
support.opacity = style.opacity === "0.5";
|
6263
6270
|
|
6264
6271
|
// Verify style float existence
|
6265
6272
|
// (IE uses styleFloat instead of cssFloat)
|
6266
|
-
support.cssFloat = !!
|
6273
|
+
support.cssFloat = !!style.cssFloat;
|
6267
6274
|
|
6268
6275
|
div.style.backgroundClip = "content-box";
|
6269
6276
|
div.cloneNode( true ).style.backgroundClip = "";
|
6270
6277
|
support.clearCloneStyle = div.style.backgroundClip === "content-box";
|
6271
6278
|
|
6272
|
-
//
|
6273
|
-
|
6279
|
+
// Support: Firefox<29, Android 2.3
|
6280
|
+
// Vendor-prefix box-sizing
|
6281
|
+
support.boxSizing = style.boxSizing === "" || style.MozBoxSizing === "" ||
|
6282
|
+
style.WebkitBoxSizing === "";
|
6274
6283
|
|
6275
6284
|
jQuery.extend(support, {
|
6276
6285
|
reliableHiddenOffsets: function() {
|
6277
|
-
if ( reliableHiddenOffsetsVal
|
6278
|
-
return reliableHiddenOffsetsVal;
|
6279
|
-
}
|
6280
|
-
|
6281
|
-
var container, tds, isSupported,
|
6282
|
-
div = document.createElement( "div" ),
|
6283
|
-
body = document.getElementsByTagName( "body" )[ 0 ];
|
6284
|
-
|
6285
|
-
if ( !body ) {
|
6286
|
-
// Return for frameset docs that don't have a body
|
6287
|
-
return;
|
6288
|
-
}
|
6289
|
-
|
6290
|
-
// Setup
|
6291
|
-
div.setAttribute( "className", "t" );
|
6292
|
-
div.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>";
|
6293
|
-
|
6294
|
-
container = document.createElement( "div" );
|
6295
|
-
container.style.cssText = containerStyles;
|
6296
|
-
|
6297
|
-
body.appendChild( container ).appendChild( div );
|
6298
|
-
|
6299
|
-
// Support: IE8
|
6300
|
-
// Check if table cells still have offsetWidth/Height when they are set
|
6301
|
-
// to display:none and there are still other visible table cells in a
|
6302
|
-
// table row; if so, offsetWidth/Height are not reliable for use when
|
6303
|
-
// determining if an element has been hidden directly using
|
6304
|
-
// display:none (it is still safe to use offsets if a parent element is
|
6305
|
-
// hidden; don safety goggles and see bug #4512 for more information).
|
6306
|
-
div.innerHTML = "<table><tr><td></td><td>t</td></tr></table>";
|
6307
|
-
tds = div.getElementsByTagName( "td" );
|
6308
|
-
tds[ 0 ].style.cssText = "padding:0;margin:0;border:0;display:none";
|
6309
|
-
isSupported = ( tds[ 0 ].offsetHeight === 0 );
|
6310
|
-
|
6311
|
-
tds[ 0 ].style.display = "";
|
6312
|
-
tds[ 1 ].style.display = "none";
|
6313
|
-
|
6314
|
-
// Support: IE8
|
6315
|
-
// Check if empty table cells still have offsetWidth/Height
|
6316
|
-
reliableHiddenOffsetsVal = isSupported && ( tds[ 0 ].offsetHeight === 0 );
|
6317
|
-
|
6318
|
-
body.removeChild( container );
|
6319
|
-
|
6320
|
-
// Null elements to avoid leaks in IE.
|
6321
|
-
div = body = null;
|
6322
|
-
|
6323
|
-
return reliableHiddenOffsetsVal;
|
6324
|
-
},
|
6325
|
-
|
6326
|
-
boxSizing: function() {
|
6327
|
-
if ( boxSizingVal == null ) {
|
6286
|
+
if ( reliableHiddenOffsetsVal == null ) {
|
6328
6287
|
computeStyleTests();
|
6329
6288
|
}
|
6330
|
-
return
|
6289
|
+
return reliableHiddenOffsetsVal;
|
6331
6290
|
},
|
6332
6291
|
|
6333
6292
|
boxSizingReliable: function() {
|
@@ -6344,84 +6303,86 @@ function addGetHookIf( conditionFn, hookFn ) {
|
|
6344
6303
|
return pixelPositionVal;
|
6345
6304
|
},
|
6346
6305
|
|
6306
|
+
// Support: Android 2.3
|
6347
6307
|
reliableMarginRight: function() {
|
6348
|
-
|
6349
|
-
|
6350
|
-
// Use window.getComputedStyle because jsdom on node.js will break without it.
|
6351
|
-
if ( reliableMarginRightVal == null && window.getComputedStyle ) {
|
6352
|
-
body = document.getElementsByTagName( "body" )[ 0 ];
|
6353
|
-
if ( !body ) {
|
6354
|
-
// Test fired too early or in an unsupported environment, exit.
|
6355
|
-
return;
|
6356
|
-
}
|
6357
|
-
|
6358
|
-
container = document.createElement( "div" );
|
6359
|
-
div = document.createElement( "div" );
|
6360
|
-
container.style.cssText = containerStyles;
|
6361
|
-
|
6362
|
-
body.appendChild( container ).appendChild( div );
|
6363
|
-
|
6364
|
-
// Check if div with explicit width and no margin-right incorrectly
|
6365
|
-
// gets computed margin-right based on width of container. (#3333)
|
6366
|
-
// Fails in WebKit before Feb 2011 nightlies
|
6367
|
-
// WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right
|
6368
|
-
marginDiv = div.appendChild( document.createElement( "div" ) );
|
6369
|
-
marginDiv.style.cssText = div.style.cssText = divReset;
|
6370
|
-
marginDiv.style.marginRight = marginDiv.style.width = "0";
|
6371
|
-
div.style.width = "1px";
|
6372
|
-
|
6373
|
-
reliableMarginRightVal =
|
6374
|
-
!parseFloat( ( window.getComputedStyle( marginDiv, null ) || {} ).marginRight );
|
6375
|
-
|
6376
|
-
body.removeChild( container );
|
6308
|
+
if ( reliableMarginRightVal == null ) {
|
6309
|
+
computeStyleTests();
|
6377
6310
|
}
|
6378
|
-
|
6379
6311
|
return reliableMarginRightVal;
|
6380
6312
|
}
|
6381
6313
|
});
|
6382
6314
|
|
6383
6315
|
function computeStyleTests() {
|
6384
|
-
var
|
6385
|
-
|
6316
|
+
// Minified: var b,c,d,j
|
6317
|
+
var div, body, container, contents;
|
6386
6318
|
|
6387
|
-
|
6319
|
+
body = document.getElementsByTagName( "body" )[ 0 ];
|
6320
|
+
if ( !body || !body.style ) {
|
6388
6321
|
// Test fired too early or in an unsupported environment, exit.
|
6389
6322
|
return;
|
6390
6323
|
}
|
6391
6324
|
|
6392
|
-
|
6325
|
+
// Setup
|
6393
6326
|
div = document.createElement( "div" );
|
6394
|
-
container
|
6395
|
-
|
6327
|
+
container = document.createElement( "div" );
|
6328
|
+
container.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px";
|
6396
6329
|
body.appendChild( container ).appendChild( div );
|
6397
6330
|
|
6398
6331
|
div.style.cssText =
|
6399
|
-
|
6400
|
-
|
6401
|
-
|
6402
|
-
|
6403
|
-
|
6404
|
-
// with some non-1 values of body zoom, ticket #13543
|
6405
|
-
jQuery.swap( body, body.style.zoom != null ? { zoom: 1 } : {}, function() {
|
6406
|
-
boxSizingVal = div.offsetWidth === 4;
|
6407
|
-
});
|
6332
|
+
// Support: Firefox<29, Android 2.3
|
6333
|
+
// Vendor-prefix box-sizing
|
6334
|
+
"-webkit-box-sizing:border-box;-moz-box-sizing:border-box;" +
|
6335
|
+
"box-sizing:border-box;display:block;margin-top:1%;top:1%;" +
|
6336
|
+
"border:1px;padding:1px;width:4px;position:absolute";
|
6408
6337
|
|
6409
|
-
//
|
6410
|
-
|
6411
|
-
pixelPositionVal = false;
|
6338
|
+
// Support: IE<9
|
6339
|
+
// Assume reasonable values in the absence of getComputedStyle
|
6340
|
+
pixelPositionVal = boxSizingReliableVal = false;
|
6412
6341
|
reliableMarginRightVal = true;
|
6413
6342
|
|
6414
|
-
//
|
6343
|
+
// Check for getComputedStyle so that this code is not run in IE<9.
|
6415
6344
|
if ( window.getComputedStyle ) {
|
6416
6345
|
pixelPositionVal = ( window.getComputedStyle( div, null ) || {} ).top !== "1%";
|
6417
6346
|
boxSizingReliableVal =
|
6418
6347
|
( window.getComputedStyle( div, null ) || { width: "4px" } ).width === "4px";
|
6348
|
+
|
6349
|
+
// Support: Android 2.3
|
6350
|
+
// Div with explicit width and no margin-right incorrectly
|
6351
|
+
// gets computed margin-right based on width of container (#3333)
|
6352
|
+
// WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right
|
6353
|
+
contents = div.appendChild( document.createElement( "div" ) );
|
6354
|
+
|
6355
|
+
// Reset CSS: box-sizing; display; margin; border; padding
|
6356
|
+
contents.style.cssText = div.style.cssText =
|
6357
|
+
// Support: Firefox<29, Android 2.3
|
6358
|
+
// Vendor-prefix box-sizing
|
6359
|
+
"-webkit-box-sizing:content-box;-moz-box-sizing:content-box;" +
|
6360
|
+
"box-sizing:content-box;display:block;margin:0;border:0;padding:0";
|
6361
|
+
contents.style.marginRight = contents.style.width = "0";
|
6362
|
+
div.style.width = "1px";
|
6363
|
+
|
6364
|
+
reliableMarginRightVal =
|
6365
|
+
!parseFloat( ( window.getComputedStyle( contents, null ) || {} ).marginRight );
|
6366
|
+
}
|
6367
|
+
|
6368
|
+
// Support: IE8
|
6369
|
+
// Check if table cells still have offsetWidth/Height when they are set
|
6370
|
+
// to display:none and there are still other visible table cells in a
|
6371
|
+
// table row; if so, offsetWidth/Height are not reliable for use when
|
6372
|
+
// determining if an element has been hidden directly using
|
6373
|
+
// display:none (it is still safe to use offsets if a parent element is
|
6374
|
+
// hidden; don safety goggles and see bug #4512 for more information).
|
6375
|
+
div.innerHTML = "<table><tr><td></td><td>t</td></tr></table>";
|
6376
|
+
contents = div.getElementsByTagName( "td" );
|
6377
|
+
contents[ 0 ].style.cssText = "margin:0;border:0;padding:0;display:none";
|
6378
|
+
reliableHiddenOffsetsVal = contents[ 0 ].offsetHeight === 0;
|
6379
|
+
if ( reliableHiddenOffsetsVal ) {
|
6380
|
+
contents[ 0 ].style.display = "";
|
6381
|
+
contents[ 1 ].style.display = "none";
|
6382
|
+
reliableHiddenOffsetsVal = contents[ 0 ].offsetHeight === 0;
|
6419
6383
|
}
|
6420
6384
|
|
6421
6385
|
body.removeChild( container );
|
6422
|
-
|
6423
|
-
// Null elements to avoid leaks in IE.
|
6424
|
-
div = body = null;
|
6425
6386
|
}
|
6426
6387
|
|
6427
6388
|
})();
|
@@ -6461,8 +6422,8 @@ var
|
|
6461
6422
|
|
6462
6423
|
cssShow = { position: "absolute", visibility: "hidden", display: "block" },
|
6463
6424
|
cssNormalTransform = {
|
6464
|
-
letterSpacing: 0,
|
6465
|
-
fontWeight: 400
|
6425
|
+
letterSpacing: "0",
|
6426
|
+
fontWeight: "400"
|
6466
6427
|
},
|
6467
6428
|
|
6468
6429
|
cssPrefixes = [ "Webkit", "O", "Moz", "ms" ];
|
@@ -6519,13 +6480,10 @@ function showHide( elements, show ) {
|
|
6519
6480
|
values[ index ] = jQuery._data( elem, "olddisplay", defaultDisplay(elem.nodeName) );
|
6520
6481
|
}
|
6521
6482
|
} else {
|
6483
|
+
hidden = isHidden( elem );
|
6522
6484
|
|
6523
|
-
if (
|
6524
|
-
hidden
|
6525
|
-
|
6526
|
-
if ( display && display !== "none" || !hidden ) {
|
6527
|
-
jQuery._data( elem, "olddisplay", hidden ? display : jQuery.css( elem, "display" ) );
|
6528
|
-
}
|
6485
|
+
if ( display && display !== "none" || !hidden ) {
|
6486
|
+
jQuery._data( elem, "olddisplay", hidden ? display : jQuery.css( elem, "display" ) );
|
6529
6487
|
}
|
6530
6488
|
}
|
6531
6489
|
}
|
@@ -6598,7 +6556,7 @@ function getWidthOrHeight( elem, name, extra ) {
|
|
6598
6556
|
var valueIsBorderBox = true,
|
6599
6557
|
val = name === "width" ? elem.offsetWidth : elem.offsetHeight,
|
6600
6558
|
styles = getStyles( elem ),
|
6601
|
-
isBorderBox = support.boxSizing
|
6559
|
+
isBorderBox = support.boxSizing && jQuery.css( elem, "boxSizing", false, styles ) === "border-box";
|
6602
6560
|
|
6603
6561
|
// some non-html elements return undefined for offsetWidth, so check for null/undefined
|
6604
6562
|
// svg - https://bugzilla.mozilla.org/show_bug.cgi?id=649285
|
@@ -6654,6 +6612,8 @@ jQuery.extend({
|
|
6654
6612
|
cssNumber: {
|
6655
6613
|
"columnCount": true,
|
6656
6614
|
"fillOpacity": true,
|
6615
|
+
"flexGrow": true,
|
6616
|
+
"flexShrink": true,
|
6657
6617
|
"fontWeight": true,
|
6658
6618
|
"lineHeight": true,
|
6659
6619
|
"opacity": true,
|
@@ -6722,9 +6682,6 @@ jQuery.extend({
|
|
6722
6682
|
// Support: IE
|
6723
6683
|
// Swallow errors from 'invalid' CSS values (#5509)
|
6724
6684
|
try {
|
6725
|
-
// Support: Chrome, Safari
|
6726
|
-
// Setting style to blank string required to delete "style: x !important;"
|
6727
|
-
style[ name ] = "";
|
6728
6685
|
style[ name ] = value;
|
6729
6686
|
} catch(e) {}
|
6730
6687
|
}
|
@@ -6781,7 +6738,7 @@ jQuery.each([ "height", "width" ], function( i, name ) {
|
|
6781
6738
|
if ( computed ) {
|
6782
6739
|
// certain elements can have dimension info if we invisibly show them
|
6783
6740
|
// however, it must have a current display style that would benefit from this
|
6784
|
-
return
|
6741
|
+
return rdisplayswap.test( jQuery.css( elem, "display" ) ) && elem.offsetWidth === 0 ?
|
6785
6742
|
jQuery.swap( elem, cssShow, function() {
|
6786
6743
|
return getWidthOrHeight( elem, name, extra );
|
6787
6744
|
}) :
|
@@ -6796,7 +6753,7 @@ jQuery.each([ "height", "width" ], function( i, name ) {
|
|
6796
6753
|
elem,
|
6797
6754
|
name,
|
6798
6755
|
extra,
|
6799
|
-
support.boxSizing
|
6756
|
+
support.boxSizing && jQuery.css( elem, "boxSizing", false, styles ) === "border-box",
|
6800
6757
|
styles
|
6801
6758
|
) : 0
|
6802
6759
|
);
|
@@ -7145,7 +7102,7 @@ function createTween( value, prop, animation ) {
|
|
7145
7102
|
|
7146
7103
|
function defaultPrefilter( elem, props, opts ) {
|
7147
7104
|
/* jshint validthis: true */
|
7148
|
-
var prop, value, toggle, tween, hooks, oldfire, display,
|
7105
|
+
var prop, value, toggle, tween, hooks, oldfire, display, checkDisplay,
|
7149
7106
|
anim = this,
|
7150
7107
|
orig = {},
|
7151
7108
|
style = elem.style,
|
@@ -7189,16 +7146,16 @@ function defaultPrefilter( elem, props, opts ) {
|
|
7189
7146
|
// Set display property to inline-block for height/width
|
7190
7147
|
// animations on inline elements that are having width/height animated
|
7191
7148
|
display = jQuery.css( elem, "display" );
|
7192
|
-
|
7193
|
-
|
7194
|
-
|
7195
|
-
|
7196
|
-
|
7197
|
-
|
7149
|
+
|
7150
|
+
// Test default display if display is currently "none"
|
7151
|
+
checkDisplay = display === "none" ?
|
7152
|
+
jQuery._data( elem, "olddisplay" ) || defaultDisplay( elem.nodeName ) : display;
|
7153
|
+
|
7154
|
+
if ( checkDisplay === "inline" && jQuery.css( elem, "float" ) === "none" ) {
|
7198
7155
|
|
7199
7156
|
// inline-level elements accept inline-block;
|
7200
7157
|
// block-level elements need to be inline with layout
|
7201
|
-
if ( !support.inlineBlockNeedsLayout ||
|
7158
|
+
if ( !support.inlineBlockNeedsLayout || defaultDisplay( elem.nodeName ) === "inline" ) {
|
7202
7159
|
style.display = "inline-block";
|
7203
7160
|
} else {
|
7204
7161
|
style.zoom = 1;
|
@@ -7233,6 +7190,10 @@ function defaultPrefilter( elem, props, opts ) {
|
|
7233
7190
|
}
|
7234
7191
|
}
|
7235
7192
|
orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop );
|
7193
|
+
|
7194
|
+
// Any non-fx value stops us from restoring the original display value
|
7195
|
+
} else {
|
7196
|
+
display = undefined;
|
7236
7197
|
}
|
7237
7198
|
}
|
7238
7199
|
|
@@ -7274,6 +7235,10 @@ function defaultPrefilter( elem, props, opts ) {
|
|
7274
7235
|
}
|
7275
7236
|
}
|
7276
7237
|
}
|
7238
|
+
|
7239
|
+
// If this is a noop like .hide().hide(), restore an overwritten display value
|
7240
|
+
} else if ( (display === "none" ? defaultDisplay( elem.nodeName ) : display) === "inline" ) {
|
7241
|
+
style.display = display;
|
7277
7242
|
}
|
7278
7243
|
}
|
7279
7244
|
|
@@ -7690,10 +7655,11 @@ jQuery.fn.delay = function( time, type ) {
|
|
7690
7655
|
|
7691
7656
|
|
7692
7657
|
(function() {
|
7693
|
-
var a,
|
7694
|
-
|
7658
|
+
// Minified: var a,b,c,d,e
|
7659
|
+
var input, div, select, a, opt;
|
7695
7660
|
|
7696
7661
|
// Setup
|
7662
|
+
div = document.createElement( "div" );
|
7697
7663
|
div.setAttribute( "className", "t" );
|
7698
7664
|
div.innerHTML = " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>";
|
7699
7665
|
a = div.getElementsByTagName("a")[ 0 ];
|
@@ -7741,9 +7707,6 @@ jQuery.fn.delay = function( time, type ) {
|
|
7741
7707
|
input.value = "t";
|
7742
7708
|
input.setAttribute( "type", "radio" );
|
7743
7709
|
support.radioValue = input.value === "t";
|
7744
|
-
|
7745
|
-
// Null elements to avoid leaks in IE.
|
7746
|
-
a = input = select = opt = div = null;
|
7747
7710
|
})();
|
7748
7711
|
|
7749
7712
|
|
@@ -7817,7 +7780,9 @@ jQuery.extend({
|
|
7817
7780
|
var val = jQuery.find.attr( elem, "value" );
|
7818
7781
|
return val != null ?
|
7819
7782
|
val :
|
7820
|
-
|
7783
|
+
// Support: IE10-11+
|
7784
|
+
// option.text throws exceptions (#14686, #14858)
|
7785
|
+
jQuery.trim( jQuery.text( elem ) );
|
7821
7786
|
}
|
7822
7787
|
},
|
7823
7788
|
select: {
|
@@ -9981,7 +9946,7 @@ jQuery.fn.load = function( url, params, callback ) {
|
|
9981
9946
|
off = url.indexOf(" ");
|
9982
9947
|
|
9983
9948
|
if ( off >= 0 ) {
|
9984
|
-
selector = url.slice( off, url.length );
|
9949
|
+
selector = jQuery.trim( url.slice( off, url.length ) );
|
9985
9950
|
url = url.slice( 0, off );
|
9986
9951
|
}
|
9987
9952
|
|
@@ -10294,6 +10259,12 @@ jQuery.fn.andSelf = jQuery.fn.addBack;
|
|
10294
10259
|
// derived from file names, and jQuery is normally delivered in a lowercase
|
10295
10260
|
// file name. Do this after creating the global so that if an AMD module wants
|
10296
10261
|
// to call noConflict to hide this version of jQuery, it will work.
|
10262
|
+
|
10263
|
+
// Note that for maximum portability, libraries that are not jQuery should
|
10264
|
+
// declare themselves as anonymous modules, and avoid setting a global if an
|
10265
|
+
// AMD loader is present. jQuery is a special case. For more information, see
|
10266
|
+
// https://github.com/jrburke/requirejs/wiki/Updating-existing-libraries#wiki-anon
|
10267
|
+
|
10297
10268
|
if ( typeof define === "function" && define.amd ) {
|
10298
10269
|
define( "jquery", [], function() {
|
10299
10270
|
return jQuery;
|