sim3x: кстати, интересно было бы узнать ваше виденье, чего например не хватает Ion.RangeSlider до идеальности? У меня много планов с ним на будущее и люди многое просят реализовать. Чему отдать приоритет?
Денис Инешин:
>чего например не хватает Ion.RangeSlider до идеальности
++++ тесты!
++++ разделить код и представление - облегчит переход на shadow dom, внедрение в ангуляр и тп
+++ БЕМизировать стили: 1 елемент = класс + модификатор (опционильно)
+++ сборка на gulp-grunt
+ стили в less/sass/stylus в виде миксинов
+ autoprefixer - пусть сам пользователь решает, поддержка чего ему нужна
+ сделать все стилями и не использовать картинки
или
+ включить через base64 (поддержка ие7 ведь не нужна?) файл с картинками крошечный (gulp-inline-base64)
+ скины прицепить к миксинам
Денис Инешин: Хозяин-барин. Но аудиторию это точно сужает. Потому что если лет 5 назад jQuery по-любому был подключен на 99% сайтов, то сегодня уже заметен процент сайтов, где от него отказались. Либо просто за ненадобностью (потому что ванильного достаточно), либо ушли на более продвинутые вещи (всякие ангуляры и так далее).
А тянуть jQuery ради одного контрола... Я например не хочу. И поэтому я выбираю всегда noIUSlider вместо вашей библиотеки (а остальном безусловно симпатичной) или Owl Carousel вместо Slick или Fotorama (которые тоже очень круты, но увы).
Кстати, если уход с jQuery точно не планируется, то тогда я бы посоветовал хотя бы проверить совместимость библиотеки с Zepto. Когда деваться совсем некуда, я все равно стараюсь подменить jQ на неё, потому что весит в несколько раз меньше. И часть jQ-библиотек могут работать с Зепто из коробки или после небольшого напилинга. А вот ту же Фотораму мне не удалось заставить подружиться за разумное время.
Денис Инешин, подскажите пожалуйста, как сейчас лучше всего реализовать draggable элемент по оси X в пределах одного DIV. Визуально это вертикальная линия, поэтому range не подходит, но работать должно так же.
А вообще:
1. Двигаем мышкой и записываем ее координаты
2. Передаем эти координаты в requestAnimationFrame
3. Меняем позицию свой полоски при изменении этих координат.