git.asbjorn.biz
/
jquery.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
7cfec99
)
clearQueue and next should now work with default fx on all browsers
author
Yehuda Katz
<wycats@gmail.com>
Mon, 13 Jul 2009 22:21:40 +0000
(22:21 +0000)
committer
Yehuda Katz
<wycats@gmail.com>
Mon, 13 Jul 2009 22:21:40 +0000
(22:21 +0000)
src/data.js
patch
|
blob
|
history
test/unit/data.js
patch
|
blob
|
history
diff --git
a/src/data.js
b/src/data.js
index
8714ab9
..
bf54e75
100644
(file)
--- a/
src/data.js
+++ b/
src/data.js
@@
-130,11
+130,11
@@
jQuery.fn.extend({
if ( data === undefined )
\r
return jQuery.queue( this[0], type );
\r
\r
if ( data === undefined )
\r
return jQuery.queue( this[0], type );
\r
\r
- return this.each(function(){
\r
+ return this.each(function(i, elem){
\r
var queue = jQuery.queue( this, type, data );
\r
\r
var queue = jQuery.queue( this, type, data );
\r
\r
- if( type == "fx" && queue.length == 1 )
\r
- queue[0].call(this);
\r
+ if( type == "fx" && queue.length == 1 )
\r
+ queue[0].call(this, function() { jQuery(elem).dequeue(type); });
\r
});
\r
},
\r
dequeue: function(type){
\r
});
\r
},
\r
dequeue: function(type){
\r
@@
-143,6
+143,6
@@
jQuery.fn.extend({
});
\r
},
\r
clearQueue: function(type){
\r
});
\r
},
\r
clearQueue: function(type){
\r
- return this.queue( type, [] );
\r
+ return this.queue( type || "fx", [] );
\r
}
\r
});
\ No newline at end of file
}
\r
});
\ No newline at end of file
diff --git
a/test/unit/data.js
b/test/unit/data.js
index
5d390e1
..
812ccd2
100644
(file)
--- a/
test/unit/data.js
+++ b/
test/unit/data.js
@@
-180,22
+180,6
@@
test("queue(name) passes in the next item in the queue as a parameter", function
div.removeData();
\r
});
\r
\r
div.removeData();
\r
});
\r
\r
- expect(1);
\r
-
\r
- var div = jQuery({});
\r
- var counter = 0;
\r
-
\r
- div.queue("foo", function(next) {
\r
- counter++;
\r
- jQuery(this).clearQueue("foo");
\r
- next();
\r
- }).queue("foo", function(next) {
\r
- counter++;
\r
- });
\r
-
\r
- div.dequeue("foo");
\r
-
\r
- equals(counter, 1, "the queue was cleared");
\r
test("queue(name) passes in the next item in the queue as a parameter", function() {
\r
expect(2);
\r
\r
test("queue(name) passes in the next item in the queue as a parameter", function() {
\r
expect(2);
\r
\r
@@
-229,12
+213,10
@@
test("queue() passes in the next item in the queue as a parameter to fx queues",
}).queue(function(next) {
\r
equals(++counter, 2, "Next was called");
\r
next();
\r
}).queue(function(next) {
\r
equals(++counter, 2, "Next was called");
\r
next();
\r
- }).queue(function() {
\r
+ }).queue("bar", function() {
\r
equals(++counter, 3, "Other queues are not triggered by next()")
\r
});
\r
\r
equals(++counter, 3, "Other queues are not triggered by next()")
\r
});
\r
\r
- div.dequeue();
\r
-
\r
div.removeData();
\r
});
\r
\r
div.removeData();
\r
});
\r
\r
@@
-255,6
+237,8
@@
test("clearQueue(name) clears the queue", function() {
div.dequeue("foo");
\r
\r
equals(counter, 1, "the queue was cleared");
\r
div.dequeue("foo");
\r
\r
equals(counter, 1, "the queue was cleared");
\r
+
\r
+ div.removeData();
\r
});
\r
\r
test("clearQueue() clears the fx queue", function() {
\r
});
\r
\r
test("clearQueue() clears the fx queue", function() {
\r
@@
-265,13
+249,12
@@
test("clearQueue() clears the fx queue", function() {
\r
div.queue(function(next) {
\r
counter++;
\r
\r
div.queue(function(next) {
\r
counter++;
\r
- jQuery(this).clearQueue();
\r
- next();
\r
+ setTimeout(function() { jQuery(this).clearQueue(); next(); }, 50);
\r
}).queue(function(next) {
\r
counter++;
\r
});
\r
\r
}).queue(function(next) {
\r
counter++;
\r
});
\r
\r
- div.dequeue();
\r
-
\r
equals(counter, 1, "the queue was cleared");
\r
equals(counter, 1, "the queue was cleared");
\r
-})
\r
+
\r
+ div.removeData();
\r
+});
\r