Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
J
jquery
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
夏彬
jquery
Commits
6ffa7307
Commit
6ffa7307
authored
Dec 27, 2010
by
jrburke
Committed by
Colin Snover
Dec 27, 2010
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Register as a CommonJS async module if in that kind of environment. Fixes #7102.
parent
01cba2ec
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
35 additions
and
23 deletions
+35
-23
core.js
src/core.js
+5
-0
testinit.js
test/data/testinit.js
+6
-1
core.js
test/unit/core.js
+24
-22
No files found.
src/core.js
View file @
6ffa7307
...
@@ -886,6 +886,11 @@ function doScrollCheck() {
...
@@ -886,6 +886,11 @@ function doScrollCheck() {
jQuery
.
ready
();
jQuery
.
ready
();
}
}
// Expose jQuery as an Asynchronous Module
if
(
typeof
define
!==
"undefined"
)
{
define
(
"jquery"
,
[],
function
()
{
return
jQuery
;
}
);
}
// Expose jQuery to the global object
// Expose jQuery to the global object
return
(
window
.
jQuery
=
window
.
$
=
jQuery
);
return
(
window
.
jQuery
=
window
.
$
=
jQuery
);
...
...
test/data/testinit.js
View file @
6ffa7307
var
jQuery
=
this
.
jQuery
||
"jQuery"
,
// For testing .noConflict()
var
jQuery
=
this
.
jQuery
||
"jQuery"
,
// For testing .noConflict()
$
=
this
.
$
||
"$"
,
$
=
this
.
$
||
"$"
,
originaljQuery
=
jQuery
,
originaljQuery
=
jQuery
,
original$
=
$
;
original$
=
$
,
commonJSDefined
;
function
define
(
module
,
dependencies
,
callback
)
{
commonJSDefined
=
callback
();
}
/**
/**
* Returns an array of elements with the given IDs, eg.
* Returns an array of elements with the given IDs, eg.
...
...
test/unit/core.js
View file @
6ffa7307
...
@@ -12,7 +12,9 @@ test("Basic requirements", function() {
...
@@ -12,7 +12,9 @@ test("Basic requirements", function() {
});
});
test
(
"jQuery()"
,
function
()
{
test
(
"jQuery()"
,
function
()
{
expect
(
23
);
expect
(
24
);
strictEqual
(
commonJSDefined
,
jQuery
,
"CommonJS registered (Bug #7102)"
);
// Basic constructor's behavior
// Basic constructor's behavior
...
@@ -151,7 +153,7 @@ test("selector state", function() {
...
@@ -151,7 +153,7 @@ test("selector state", function() {
test
=
jQuery
(
"#main"
).
eq
(
0
);
test
=
jQuery
(
"#main"
).
eq
(
0
);
equals
(
test
.
selector
,
"#main.slice(0,1)"
,
"#main eq Selector"
);
equals
(
test
.
selector
,
"#main.slice(0,1)"
,
"#main eq Selector"
);
equals
(
test
.
context
,
document
,
"#main eq Context"
);
equals
(
test
.
context
,
document
,
"#main eq Context"
);
var
d
=
"<div />"
;
var
d
=
"<div />"
;
equals
(
equals
(
jQuery
(
d
).
appendTo
(
jQuery
(
d
)).
selector
,
jQuery
(
d
).
appendTo
(
jQuery
(
d
)).
selector
,
...
@@ -253,38 +255,38 @@ test("isPlainObject", function() {
...
@@ -253,38 +255,38 @@ test("isPlainObject", function() {
// The use case that we want to match
// The use case that we want to match
ok
(
jQuery
.
isPlainObject
({}),
"{}"
);
ok
(
jQuery
.
isPlainObject
({}),
"{}"
);
// Not objects shouldn't be matched
// Not objects shouldn't be matched
ok
(
!
jQuery
.
isPlainObject
(
""
),
"string"
);
ok
(
!
jQuery
.
isPlainObject
(
""
),
"string"
);
ok
(
!
jQuery
.
isPlainObject
(
0
)
&&
!
jQuery
.
isPlainObject
(
1
),
"number"
);
ok
(
!
jQuery
.
isPlainObject
(
0
)
&&
!
jQuery
.
isPlainObject
(
1
),
"number"
);
ok
(
!
jQuery
.
isPlainObject
(
true
)
&&
!
jQuery
.
isPlainObject
(
false
),
"boolean"
);
ok
(
!
jQuery
.
isPlainObject
(
true
)
&&
!
jQuery
.
isPlainObject
(
false
),
"boolean"
);
ok
(
!
jQuery
.
isPlainObject
(
null
),
"null"
);
ok
(
!
jQuery
.
isPlainObject
(
null
),
"null"
);
ok
(
!
jQuery
.
isPlainObject
(
undefined
),
"undefined"
);
ok
(
!
jQuery
.
isPlainObject
(
undefined
),
"undefined"
);
// Arrays shouldn't be matched
// Arrays shouldn't be matched
ok
(
!
jQuery
.
isPlainObject
([]),
"array"
);
ok
(
!
jQuery
.
isPlainObject
([]),
"array"
);
// Instantiated objects shouldn't be matched
// Instantiated objects shouldn't be matched
ok
(
!
jQuery
.
isPlainObject
(
new
Date
),
"new Date"
);
ok
(
!
jQuery
.
isPlainObject
(
new
Date
),
"new Date"
);
var
fn
=
function
(){};
var
fn
=
function
(){};
// Functions shouldn't be matched
// Functions shouldn't be matched
ok
(
!
jQuery
.
isPlainObject
(
fn
),
"fn"
);
ok
(
!
jQuery
.
isPlainObject
(
fn
),
"fn"
);
// Again, instantiated objects shouldn't be matched
// Again, instantiated objects shouldn't be matched
ok
(
!
jQuery
.
isPlainObject
(
new
fn
),
"new fn (no methods)"
);
ok
(
!
jQuery
.
isPlainObject
(
new
fn
),
"new fn (no methods)"
);
// Makes the function a little more realistic
// Makes the function a little more realistic
// (and harder to detect, incidentally)
// (and harder to detect, incidentally)
fn
.
prototype
=
{
someMethod
:
function
(){}};
fn
.
prototype
=
{
someMethod
:
function
(){}};
// Again, instantiated objects shouldn't be matched
// Again, instantiated objects shouldn't be matched
ok
(
!
jQuery
.
isPlainObject
(
new
fn
),
"new fn"
);
ok
(
!
jQuery
.
isPlainObject
(
new
fn
),
"new fn"
);
// DOM Element
// DOM Element
ok
(
!
jQuery
.
isPlainObject
(
document
.
createElement
(
"div"
)),
"DOM Element"
);
ok
(
!
jQuery
.
isPlainObject
(
document
.
createElement
(
"div"
)),
"DOM Element"
);
// Window
// Window
ok
(
!
jQuery
.
isPlainObject
(
window
),
"window"
);
ok
(
!
jQuery
.
isPlainObject
(
window
),
"window"
);
...
@@ -298,7 +300,7 @@ test("isPlainObject", function() {
...
@@ -298,7 +300,7 @@ test("isPlainObject", function() {
document
.
body
.
removeChild
(
iframe
);
document
.
body
.
removeChild
(
iframe
);
start
();
start
();
};
};
var
doc
=
iframe
.
contentDocument
||
iframe
.
contentWindow
.
document
;
var
doc
=
iframe
.
contentDocument
||
iframe
.
contentWindow
.
document
;
doc
.
open
();
doc
.
open
();
doc
.
write
(
"<body onload='window.parent.iframeDone(Object);'>"
);
doc
.
write
(
"<body onload='window.parent.iframeDone(Object);'>"
);
...
@@ -659,7 +661,7 @@ test("jQuery.merge()", function() {
...
@@ -659,7 +661,7 @@ test("jQuery.merge()", function() {
// Fixed at [5998], #3641
// Fixed at [5998], #3641
same
(
parse
([
-
2
,
-
1
],
[
0
,
1
,
2
]),
[
-
2
,
-
1
,
0
,
1
,
2
],
"Second array including a zero (falsy)"
);
same
(
parse
([
-
2
,
-
1
],
[
0
,
1
,
2
]),
[
-
2
,
-
1
,
0
,
1
,
2
],
"Second array including a zero (falsy)"
);
// After fixing #5527
// After fixing #5527
same
(
parse
([],
[
null
,
undefined
]),
[
null
,
undefined
],
"Second array including null and undefined values"
);
same
(
parse
([],
[
null
,
undefined
]),
[
null
,
undefined
],
"Second array including null and undefined values"
);
same
(
parse
({
length
:
0
},
[
1
,
2
]),
{
length
:
2
,
0
:
1
,
1
:
2
},
"First array like"
);
same
(
parse
({
length
:
0
},
[
1
,
2
]),
{
length
:
2
,
0
:
1
,
1
:
2
},
"First array like"
);
...
@@ -694,7 +696,7 @@ test("jQuery.extend(Object, Object)", function() {
...
@@ -694,7 +696,7 @@ test("jQuery.extend(Object, Object)", function() {
equals
(
deep1
.
foo2
,
document
,
"Make sure that a deep clone was not attempted on the document"
);
equals
(
deep1
.
foo2
,
document
,
"Make sure that a deep clone was not attempted on the document"
);
ok
(
jQuery
.
extend
(
true
,
{},
nestedarray
).
arr
!==
arr
,
"Deep extend of object must clone child array"
);
ok
(
jQuery
.
extend
(
true
,
{},
nestedarray
).
arr
!==
arr
,
"Deep extend of object must clone child array"
);
// #5991
// #5991
ok
(
jQuery
.
isArray
(
jQuery
.
extend
(
true
,
{
arr
:
{}
},
nestedarray
).
arr
),
"Cloned array heve to be an Array"
);
ok
(
jQuery
.
isArray
(
jQuery
.
extend
(
true
,
{
arr
:
{}
},
nestedarray
).
arr
),
"Cloned array heve to be an Array"
);
ok
(
jQuery
.
isPlainObject
(
jQuery
.
extend
(
true
,
{
arr
:
arr
},
{
arr
:
{}
}).
arr
),
"Cloned object heve to be an plain object"
);
ok
(
jQuery
.
isPlainObject
(
jQuery
.
extend
(
true
,
{
arr
:
arr
},
{
arr
:
{}
}).
arr
),
"Cloned object heve to be an plain object"
);
...
@@ -715,13 +717,13 @@ test("jQuery.extend(Object, Object)", function() {
...
@@ -715,13 +717,13 @@ test("jQuery.extend(Object, Object)", function() {
empty
=
{};
empty
=
{};
jQuery
.
extend
(
true
,
empty
,
optionsWithCustomObject
);
jQuery
.
extend
(
true
,
empty
,
optionsWithCustomObject
);
ok
(
empty
.
foo
&&
empty
.
foo
.
date
===
customObject
,
"Custom objects copy correctly (no methods)"
);
ok
(
empty
.
foo
&&
empty
.
foo
.
date
===
customObject
,
"Custom objects copy correctly (no methods)"
);
// Makes the class a little more realistic
// Makes the class a little more realistic
myKlass
.
prototype
=
{
someMethod
:
function
(){}
};
myKlass
.
prototype
=
{
someMethod
:
function
(){}
};
empty
=
{};
empty
=
{};
jQuery
.
extend
(
true
,
empty
,
optionsWithCustomObject
);
jQuery
.
extend
(
true
,
empty
,
optionsWithCustomObject
);
ok
(
empty
.
foo
&&
empty
.
foo
.
date
===
customObject
,
"Custom objects copy correctly"
);
ok
(
empty
.
foo
&&
empty
.
foo
.
date
===
customObject
,
"Custom objects copy correctly"
);
var
ret
=
jQuery
.
extend
(
true
,
{
foo
:
4
},
{
foo
:
new
Number
(
5
)
}
);
var
ret
=
jQuery
.
extend
(
true
,
{
foo
:
4
},
{
foo
:
new
Number
(
5
)
}
);
ok
(
ret
.
foo
==
5
,
"Wrapped numbers copy correctly"
);
ok
(
ret
.
foo
==
5
,
"Wrapped numbers copy correctly"
);
...
@@ -849,10 +851,10 @@ test("jQuery.makeArray", function(){
...
@@ -849,10 +851,10 @@ test("jQuery.makeArray", function(){
test
(
"jQuery.isEmptyObject"
,
function
(){
test
(
"jQuery.isEmptyObject"
,
function
(){
expect
(
2
);
expect
(
2
);
equals
(
true
,
jQuery
.
isEmptyObject
({}),
"isEmptyObject on empty object literal"
);
equals
(
true
,
jQuery
.
isEmptyObject
({}),
"isEmptyObject on empty object literal"
);
equals
(
false
,
jQuery
.
isEmptyObject
({
a
:
1
}),
"isEmptyObject on non-empty object literal"
);
equals
(
false
,
jQuery
.
isEmptyObject
({
a
:
1
}),
"isEmptyObject on non-empty object literal"
);
// What about this ?
// What about this ?
// equals(true, jQuery.isEmptyObject(null), "isEmptyObject on null" );
// equals(true, jQuery.isEmptyObject(null), "isEmptyObject on null" );
});
});
...
@@ -878,23 +880,23 @@ test("jQuery.proxy", function(){
...
@@ -878,23 +880,23 @@ test("jQuery.proxy", function(){
test
(
"jQuery.parseJSON"
,
function
(){
test
(
"jQuery.parseJSON"
,
function
(){
expect
(
8
);
expect
(
8
);
equals
(
jQuery
.
parseJSON
(),
null
,
"Nothing in, null out."
);
equals
(
jQuery
.
parseJSON
(),
null
,
"Nothing in, null out."
);
equals
(
jQuery
.
parseJSON
(
null
),
null
,
"Nothing in, null out."
);
equals
(
jQuery
.
parseJSON
(
null
),
null
,
"Nothing in, null out."
);
equals
(
jQuery
.
parseJSON
(
""
),
null
,
"Nothing in, null out."
);
equals
(
jQuery
.
parseJSON
(
""
),
null
,
"Nothing in, null out."
);
same
(
jQuery
.
parseJSON
(
"{}"
),
{},
"Plain object parsing."
);
same
(
jQuery
.
parseJSON
(
"{}"
),
{},
"Plain object parsing."
);
same
(
jQuery
.
parseJSON
(
'{"test":1}'
),
{
"test"
:
1
},
"Plain object parsing."
);
same
(
jQuery
.
parseJSON
(
'{"test":1}'
),
{
"test"
:
1
},
"Plain object parsing."
);
same
(
jQuery
.
parseJSON
(
'
\
n{"test":1}'
),
{
"test"
:
1
},
"Make sure leading whitespaces are handled."
);
same
(
jQuery
.
parseJSON
(
'
\
n{"test":1}'
),
{
"test"
:
1
},
"Make sure leading whitespaces are handled."
);
try
{
try
{
jQuery
.
parseJSON
(
"{a:1}"
);
jQuery
.
parseJSON
(
"{a:1}"
);
ok
(
false
,
"Test malformed JSON string."
);
ok
(
false
,
"Test malformed JSON string."
);
}
catch
(
e
)
{
}
catch
(
e
)
{
ok
(
true
,
"Test malformed JSON string."
);
ok
(
true
,
"Test malformed JSON string."
);
}
}
try
{
try
{
jQuery
.
parseJSON
(
"{'a':1}"
);
jQuery
.
parseJSON
(
"{'a':1}"
);
ok
(
false
,
"Test malformed JSON string."
);
ok
(
false
,
"Test malformed JSON string."
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment