Замедление выделения элементов Mootools? - PullRequest
1 голос
/ 23 августа 2010

Итак, метод выделения элементов великолепен!

$('flashyflashy').highlight('#fcc');

За исключением того, что он выходит слишком быстро - есть ли варианты, которые я могу изменить, аналогично duration: 'long'?

Tween

Спасибо:)

1 Ответ

3 голосов
/ 23 августа 2010

Вы можете изменить продолжительность анимации по умолчанию для рассматриваемых элементов.Например, если вы хотите, чтобы анимация для элемента с идентификатором 'flashyflashy' имела продолжительность 2000 мс вместо значения по умолчанию 500 мс, вызовите следующее:

$("flashylflashy").get("tween").options.duration = 2000;

Это должно замедлить анимацию элементов по умолчаниюэкземпляра, и, следовательно, замедлить метод выделения.

Вы также можете реализовать пользовательскую функцию выделения:

Element.implement({
    highlight: function(start, end, duration){
        if (!end){
            end = this.retrieve('highlight:original', this.getStyle('background-color'));
            end = (end == 'transparent') ? '#fff' : end;
        }
        var tween = this.get('tween');
        tween.options.duration = duration;
        tween.start('background-color', start || '#ffff88', end).chain(function(){
            this.setStyle('background-color', this.retrieve('highlight:original'));
            tween.callChain();
        }.bind(this));
        return this;
    }
});

, которая позволит вам проходить не только через начальный / конечный цвета, но итакже продолжительность, которую должен использовать выделение.Выше код не проверен, но он должен работать нормально.

...