0.2.1 • Published 9 years ago

mr_nvtsk-gaugejs v0.2.1

Weekly downloads
66
License
-
Repository
github
Last release
9 years ago

GaugeJS

Описание

GaugeJS -- это простой в использовании функциональный JavaScript-компонент, позволяющий создавать разнообразные гибконастраеваемые круговые счётчики.

npm.io

Ключевые особенности:

  • Поддержка любого начального угла и апертуры шкалы.

  • Поддержка любого количества промежутков со своими визуальными стилями.

  • Отображение любого количества шкал со своими визуальными стилями как снаружи счётчика, так и внутри него.

  • Гибкая настройка всех визуальных элементов (цвета, ширина линий, отступы) при помощи JS и CSS.

  • Высокая скорость работы "в динамике". При изменениях в отображении компонента визуальные элементы не перерисовываются, если они уже были созданы ранее: обновляются лишь их атрибуты.

Поддержка браузеров

Desktop: Chrome 1+, FireFox 1.5+, Internet Explorer 9+, Opera 9+, Safari 3+.

Mobile: iOS Safari 3.2+, Android Browser 3+.

Детальная информация о поддержке основных веб-движков.

Установка

NPM:

npm install mr_nvtsk-gaugejs

Использование

Использование нативного компонента:

Инициализация (в объекте настроек необходимо передавать как минимум контейнер, в который будет добавлен счётчик):

var gauge = Gauge({'container': HTMLElement});

Второй способ инициализации:

var gauge = new Gauge();
gauge.create({'container': HTMLElement});

Установка значения счётчика:

gauge.set(number);

Считывание значения счётчика:

var number = gauge.get();

Изменение компонента:

gauge.change(settings);

Удаление компонента:

gauge.destroy();

Использование jQuery плагина:

Инициализация (объект настроек передавать не обязательно):

$(element).Gauge(settings);

Установка значения счётчика:

$(element).Gauge('set', number);

Считывание значения счётчика:

var number = $(element).Gauge('get');

Изменение компонента:

$(element).Gauge('change', settings);

Удаление компонента:

$(element).Gauge('destroy');

API (methods)

change(settings) - меняет счётчик, где settings -- объект с настройками компонента (см. отдельное описание).

create(settings) - создаёт счётчик, где settings -- объект с настройками компонента (см. отдельное описание).

destroy - уничтожает счётчик.

get - возвращает значение счётчика.

hide - скрывает счётчик.

show - показывает счётчик.

set(value) - устанавливает текущее значение счётчика.

API (settings)

settings (настройки компонента):

НастройкаТипОбязательностьОписание
anglesobject-Настройки, связанные с углами счётчика (см. отдельное описание).
classstring-Префикс для HTML-атрибутов class всех визуальных элементов компонента.
containerHTMLElement+Контейнер, в который будет помещён компонент. В режиме jQuery плагина передаётся неявно и не является обязательным.
gaugeobject-Настройки, связанные со значениями счётчика (см. отдельное описание).
heightnumber-Высота компонента. Если не передана, то вычисляется автоматически в зависимости от высоты контейнера.
paddingnumber-Отступ cчётчика от границ контейнера. Стандартно отступ для шкалы и значений меток шкалы, состоящих из не более, чем трёх чисел, вычисляется автоматически. Но если значения слишом длинные, то можно подправить отступы вручную при помощи этой настройки.
stylesobject-Настройки, связанные с визуальным отображением счётчика (см. отдельное описание).
widthnumber-Ширина компонента. Если не передана, то вычисляется автоматически в зависимости от ширины контейнера.
visibilityboolean-Видимость компонента. Видимостью также можно управлять при помощи методов show и hide.

settings.angles (настройки, связанные с углами счётчика):

НастройкаТипОбязательностьОписание
aperturenumber-Апертура счётчика в градусах.
originnumber-Угол, относительно которого будет строится счётчик. По сути является биссектрисой угла апертуры.

settings.gauge (настройки, связанные со значениями счётчика):

НастройкаТипОбязательностьОписание
currentnumber-Текущее значение счётчика.
endnumber-Минимальное значение счётчика.
startnumber-Максимальное значение счётчика.

settings.styles (настройки, связанные с визуальным отображением счётчика):

НастройкаТипОбязательностьОписание
indicatorobject-Настройки, связанные с визуальным отображениям индикатора счётчика (см. отдельное описание).
rangeobject-Настройки, связанные с визуальным отображением основного (расположен по всей апертуре счётчика) сектора линии окружности счётчика (см. отдельное описание).
rangesarray.object-Настройки, связанные с визуальным отображением дополнительных секторов линии окружности счётчика (см. отдельное описание).
scalesarray.object-Настройки, связанные с визуальным отображением шкал счётчика (см. отдельное описание).

settings.styles.indicator (настройки, связанные с визуальным отображением индикатора счётчика):

НастройкаТипОбязательностьОписание
colorstring-Цвет.
lengthnumber-Длина относительно радиуса. В случае положительного значения индикатор будет простираться дальше линии окружности счётчика. В случае отрицательного значения индикатор не будет достигать линии окружности счётчика.
originRadiusnumber-Радиус окружности основания.

settings.styles.range (настройки, связанные с видуальным отображением основного (расположен по всей апертуре счётчика) сектора линии окружности счётчика):

НастройкаТипОбязательностьОписание
colorstring-Цвет.
prioritynumber-Приоритет. При пересечении несколькоих секторов линии окружности отображаться будет тот, у которого приоритет выше.
widthnumber-Ширина линии.

settings.styles.ranges (настройки, связанные с визуальным отображением дополнительных секторов линии окружности счётчика):

НастройкаТипОбязательностьОписание
colorstring-Цвет.
prioritynumber-Приоритет.
valuesobject-Настройки значений, в пределах которых будет расположен сектор (см. отдельное описание).
widthnumber-Ширина линии.

settings.styles.ranges.values (настройки значений, в пределах которых будет расположен сектор):

НастройкаТипОбязательностьОписание
endnumber-Конечное значение. Если больше максимального значения счётчика, то сектор всё равно не будет простираться за конечный угол счётчика.
startnumber-Начальное значение. Если меньше максимального значения счётчика, то сектор не будет простираться за начальный угол счётчика.

settings.styles.scales (настройки, связанные с визуальным отображением шкал счётчика):

НастройкаТипОбязательностьОписание
colorstring-Цвет.
labelobject-Настройки, связанные с отображением меток шкалы (см. отдельное описание).
lengthnumber-Длина линии.
paddingnumber-Отступ шкалы относительно линии окружности счётчика.
positionstring-Если принимает значение "inside", то шкала находится внутри линии окружности счётчика. Если принимает значение "outside", то шкала находится вне линии окружности счётчика.
prioritynumber-Приоритет. Если на одном значении и на одной позиции будут находиться сразу несколько шкал, то отображаться будет та, у которой наибольший приоритет.
stepnumber-Шаг шкалы в значениях счётчика.
widthnumber-Ширина линии.

settings.styles.scales.labels (настройки, связанные с отображением меток шкалы):

НастройкаТипОбязательностьОписание
colorstring-Цвет.
visibilityboolean-Видимость метки.

Более подробно о передаваемых компоненту настройках, а также о принципе изменения стилей при помощи CSS можно узнать ознакомившись с тестовой страницей, расположенной в каталоге example.

Примеры

npm.io

npm.io

npm.io

Разработка

Установка зависимостей:

npm install

Сборка нативного компонента:

npm run build

Сборка jQuery-плагина:

npm run build-jquery

Проверка кода:

npm run check

Лицензия

GaugeJS создавался в качестве тестового проекта для устройства на работу в KudaGo.Ru. Но было бы глупо ограничивать его использование только сотрудниками компании KudaGo.Ru. Поэтому, если вы найдёте этот компонент или любую его часть интересной для себя, то можете использовать их свободно в любых целях.

0.2.1

9 years ago

0.2.0

9 years ago

0.1.1

9 years ago

0.1.0

9 years ago

0.0.9

9 years ago

0.0.8

9 years ago

0.0.7

9 years ago

0.0.6

9 years ago

0.0.5

9 years ago

0.0.4

9 years ago

0.0.3

9 years ago

0.0.2

9 years ago

0.0.1

9 years ago