__blink: function (el) {
var _complete = function () {
- el.removeClass('animating').css('opacity', '');
+ el.removeClass('animating').css('opacity', '').css('width', '');
}
-
+ let o = 'opacity';
+ let v1 = 1;
+ let v05 = 0.5;
+ let anim = el.data('animation');
var speed = 0.5;
+ if (anim === 'highlight') {
+ o = 'width';
+ v1 = '100%';
+ v05 = '50%';
+ }
+
+
var timeline = new TimelineMax();
var repetitions = this.fluidbook.settings.linkBlinkRepetition - 1;
el.addClass('animating');
var d = 0.1;
+ let a = {
+ duration: this.fluidbook.settings.linkBlinkTime * speed, ease: 'none'
+ }
+ a.delay = 0.1;
+ a[o] = v1;
if (repetitions > 0) {
- el.css('opacity', 0);
- timeline.add(gsap.to(el, {
- duration: this.fluidbook.settings.linkBlinkTime * speed, delay: 0.1, opacity: 1, ease: 'none'
- }));
+ el.css(o, 0);
+ timeline.add(gsap.to(el, a));
d = 0;
} else {
- el.css('opacity', 1);
+ if (anim === 'highlight') {
+ el.css(o, 0);
+ } else {
+ el.css(o, 1);
+ }
}
for (var i = 0; i < repetitions; i++) {
+ a.delay = 0;
+ a[o] = v05;
+ timeline.add(gsap.to(el, a));
+ a[o] = v1;
+ timeline.add(gsap.to(el, a));
+ }
+
+ if (anim === 'fade') {
+ timeline.add(gsap.to(el, {
+ duration: this.fluidbook.settings.linkBlinkTime,
+ delay: d,
+ opacity: 0,
+ ease: 'none',
+ onComplete: _complete
+ }));
+ } else {
timeline.add(gsap.to(el, {
- duration: this.fluidbook.settings.linkBlinkTime * speed, opacity: 0.5, ease: 'none'
+ duration: speed*this.fluidbook.settings.linkBlinkTime, delay: d, [o]: v1, ease: 'none'
}));
timeline.add(gsap.to(el, {
- duration: this.fluidbook.settings.linkBlinkTime * speed, opacity: 1, ease: 'none'
+ duration: speed*this.fluidbook.settings.linkBlinkTime, opacity: 0, ease: 'none', onComplete: _complete
}));
}
- timeline.add(gsap.to(el, {
- duration: this.fluidbook.settings.linkBlinkTime, delay: d, opacity: 0, onComplete: _complete
- }));
timeline.play();
},