Я использую jQuery mobile для определенного сайта.
Мне нужен виджет, похожий на элемент слайдера переключения, но это явно указывает, что это только индикатор, а не элемент управления. Представьте себе элемент слайдера переключателя без скользящей кнопки: цветная индикация состояния и изменение текста значения параметра.
Я знаю, что я мог бы легко сделать это с помощью css вне jQuery mobile, но у меня есть мой глобальный js, настроенный для рендеринга на элементы известного типа, например:
function RenderWidgets(data,prefix) {
$.each(data,function(key,value){
$('.' + prefix + key).html(value)
$('.' + prefix + key + 'toggle').val(booleanbinarytoonoff(value)).slider("refresh")
$('.' + prefix + key + 'automantoggle').val(value).slider("refresh")
$('.' + prefix + key + 'slider').val(value).slider("refresh")
$('.' + prefix + key + 'select').val(value)
})
}
Я хотел бы добавить строку для значения набора элементов индикатора и выполнить с ней, вместо того, чтобы добавлять и удалять классы.
Поэтому мой вопрос: лучший способ выполнить это, чтобы прорваться через мобильную библиотеку jQuery, дублировать класс переключения слайдера с пользовательским именем, а затем изменить css, чтобы он выглядел как индикатор, а не элемент управления?
Спасибо, C
Хорошо, вот что я сделал. Я завернул каждый переключатель, что я хотел только быть индикатором в диапазоне с классом "justalamp", а затем применил следующее после каждого события обновления слайдера:
$('.justalamp .ui-slider-label-a').css('text-indent','0')
$('.justalamp .ui-slider-label-b').css('text-indent','0')
$('.justalamp .ui-slider-inneroffset').html('')
$('.justalamp .ui-slider').unbind()
Первые два удаляют текстовый отступ, третий - кнопку, а последний удаляет ответ щелчка пользователя. Приятная и чистая часть состоит в том, что мы можем посылать ценности таким вещам, как если бы они были регулярными переключениями. Мне также не нужно копировать макароны весь запутанный рекламный блок jquery mobile сгенерированный html (icky). Супер!
С