Функции плагинов Mootools Slider - PullRequest
0 голосов
/ 28 августа 2009

Я использую mootools для создания обложки CSS для проигрывателя YouTube без хрома, используя javascript API для управления воспроизведением. Я не могу опубликовать код, к сожалению. У меня вопрос более общий. При использовании плагина слайдера вызов mySlider.set (step) перемещает ручку на правильный шаг на слайдере, но вызывает все функции событий плагинов (onChange, onTick, onComplete). Проблема в том, как узнать, изменилось ли положение ручки ползунка пользователем или вызовом функции set ()? Я бы подумал, что будет функция, зарезервированная для того, когда ручка была отпущена только мышью, и не была бы вызвана, если позиция была просто установлена ​​в коде. У меня есть код, который обновляет положение ручек в зависимости от того, где сейчас находится продолжительность воспроизведения видео. Мне нужно иметь возможность переместить ручку в текущую позицию в коде, не думая, что пользователь отпустил ручку.

Чтобы упростить вопрос, есть ли способ установить положение ручек на ползунке в коде, не вызывая функции, используемые при взаимодействии пользователя?

Ссылку на плагин Slider можно найти здесь http://mootools.net/docs/more/Drag/Slider

Спасибо

Ответы [ 2 ]

1 голос
/ 31 марта 2012

Я получил эту проблему и в итоге сделал это

var slider = new Slider(track,knob, {
    onChange: function(){
        console.log("doesn't fire after autosize()");
    }
});

// fake .set(); 
slider.step = 50;  // new value
slider.autosize(); // redraw the knob
0 голосов
/ 14 сентября 2009

Создайте переменную, которая указывает, что вы устанавливаете ее программно, затем пропустите обработчики событий, если переменная true.

Затем, каждый раз, когда вы устанавливаете ползунок в коде, сначала устанавливайте для переменной true, а затем возвращайтесь к false послесловиям в блоке finally.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...