|
@@ -1,4 +1,6 @@
|
|
|
var _ = require('../util')
|
|
var _ = require('../util')
|
|
|
|
|
+var addClass = _.addClass
|
|
|
|
|
+var removeClass = _.removeClass
|
|
|
var transDurationProp = _.transitionProp + 'Duration'
|
|
var transDurationProp = _.transitionProp + 'Duration'
|
|
|
var animDurationProp = _.animationProp + 'Duration'
|
|
var animDurationProp = _.animationProp + 'Duration'
|
|
|
|
|
|
|
@@ -53,7 +55,6 @@ function flush () {
|
|
|
function run (job) {
|
|
function run (job) {
|
|
|
|
|
|
|
|
var el = job.el
|
|
var el = job.el
|
|
|
- var classList = el.classList
|
|
|
|
|
var data = el.__v_trans
|
|
var data = el.__v_trans
|
|
|
var cls = job.cls
|
|
var cls = job.cls
|
|
|
var cb = job.cb
|
|
var cb = job.cb
|
|
@@ -63,7 +64,7 @@ function run (job) {
|
|
|
if (job.dir > 0) { // ENTER
|
|
if (job.dir > 0) { // ENTER
|
|
|
if (transitionType === 1) {
|
|
if (transitionType === 1) {
|
|
|
// trigger transition by removing enter class
|
|
// trigger transition by removing enter class
|
|
|
- classList.remove(cls)
|
|
|
|
|
|
|
+ removeClass(el, cls)
|
|
|
// only need to listen for transitionend if there's
|
|
// only need to listen for transitionend if there's
|
|
|
// a user callback
|
|
// a user callback
|
|
|
if (cb) setupTransitionCb(_.transitionEndEvent)
|
|
if (cb) setupTransitionCb(_.transitionEndEvent)
|
|
@@ -71,11 +72,11 @@ function run (job) {
|
|
|
// animations are triggered when class is added
|
|
// animations are triggered when class is added
|
|
|
// so we just listen for animationend to remove it.
|
|
// so we just listen for animationend to remove it.
|
|
|
setupTransitionCb(_.animationEndEvent, function () {
|
|
setupTransitionCb(_.animationEndEvent, function () {
|
|
|
- classList.remove(cls)
|
|
|
|
|
|
|
+ removeClass(el, cls)
|
|
|
})
|
|
})
|
|
|
} else {
|
|
} else {
|
|
|
// no transition applicable
|
|
// no transition applicable
|
|
|
- classList.remove(cls)
|
|
|
|
|
|
|
+ removeClass(el, cls)
|
|
|
if (cb) cb()
|
|
if (cb) cb()
|
|
|
}
|
|
}
|
|
|
} else { // LEAVE
|
|
} else { // LEAVE
|
|
@@ -87,11 +88,11 @@ function run (job) {
|
|
|
: _.animationEndEvent
|
|
: _.animationEndEvent
|
|
|
setupTransitionCb(event, function () {
|
|
setupTransitionCb(event, function () {
|
|
|
op()
|
|
op()
|
|
|
- classList.remove(cls)
|
|
|
|
|
|
|
+ removeClass(el, cls)
|
|
|
})
|
|
})
|
|
|
} else {
|
|
} else {
|
|
|
op()
|
|
op()
|
|
|
- classList.remove(cls)
|
|
|
|
|
|
|
+ removeClass(el, cls)
|
|
|
if (cb) cb()
|
|
if (cb) cb()
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -167,23 +168,22 @@ function getTransitionType (el, data, className) {
|
|
|
*/
|
|
*/
|
|
|
|
|
|
|
|
module.exports = function (el, direction, op, data, cb) {
|
|
module.exports = function (el, direction, op, data, cb) {
|
|
|
- var classList = el.classList
|
|
|
|
|
var prefix = data.id || 'v'
|
|
var prefix = data.id || 'v'
|
|
|
var enterClass = prefix + '-enter'
|
|
var enterClass = prefix + '-enter'
|
|
|
var leaveClass = prefix + '-leave'
|
|
var leaveClass = prefix + '-leave'
|
|
|
// clean up potential previous unfinished transition
|
|
// clean up potential previous unfinished transition
|
|
|
if (data.callback) {
|
|
if (data.callback) {
|
|
|
_.off(el, data.event, data.callback)
|
|
_.off(el, data.event, data.callback)
|
|
|
- classList.remove(enterClass)
|
|
|
|
|
- classList.remove(leaveClass)
|
|
|
|
|
|
|
+ removeClass(el, enterClass)
|
|
|
|
|
+ removeClass(el, leaveClass)
|
|
|
data.event = data.callback = null
|
|
data.event = data.callback = null
|
|
|
}
|
|
}
|
|
|
if (direction > 0) { // enter
|
|
if (direction > 0) { // enter
|
|
|
- classList.add(enterClass)
|
|
|
|
|
|
|
+ addClass(el, enterClass)
|
|
|
op()
|
|
op()
|
|
|
push(el, direction, null, enterClass, cb)
|
|
push(el, direction, null, enterClass, cb)
|
|
|
} else { // leave
|
|
} else { // leave
|
|
|
- classList.add(leaveClass)
|
|
|
|
|
|
|
+ addClass(el, leaveClass)
|
|
|
push(el, direction, op, leaveClass, cb)
|
|
push(el, direction, op, leaveClass, cb)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|