2013-08-15 2 views
1

Я хотел бы использовать несколько кнопок на одной странице, но хочу иметь одну группу, которая имеет один стиль (например, красный цвет) и другой с другим стилем (например, серый фон и красный forecolor).Кнопка jQueryUI с несколькими стилями на одной странице

Как это возможно?

ответ

1

Да, вы можете. Способ сделать это должен был бы использовать опцию css scope при загрузке ui - http://jqueryui.com/download/

Просто включите фреймворк и включите обе таблицы стилей с разными стилями. Обязательно применяйте различные области css (например, стиль light и стиль .dark).

Далее, в вашем html, всякий раз, когда вы показываете кнопки, добавьте соответствующую область CSS в родительский элемент, чтобы подобрать правильный стиль.

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

+2

Это даже лучше, чем мое решение, в большинстве случаев. :-) – nagylzs

+0

Звучит очень хорошо. Но на данный момент я решил создать простую кнопку только с помощью CSS без jQ UI.button(), потому что я нахожу его более гибким (я могу использовать спрайты для значков кнопок, изменять их при наведении и т. Д.), А мой файл CSS - меньше по размеру. – petriq

1

Прочитайте раздел тематизации здесь: http://api.jqueryui.com/button/

Вы всегда можете добавить дополнительный класс, чтобы изменить стиль. Таким образом, после вызова кнопки() на элементе, вы можете:

$(element).removeClass("ui-button-text"); 
$(element).addClass("ui-button-text-2"); 

и, конечно, нужно определить свой собственный класс CSS для этого:

.ui-button-text-2 { color: red; } 

Это, конечно, неуклюжий, потому что вам нужно для использования двух вызовов вместо вызова одной кнопки(). Но jQuery можно расширить - вы можете просто создать метод $.themedbutton(), который принимает дополнительные параметры ...

Смежные вопросы