Мне понравилась идея простого добавления классов, поэтому я написал ее как плагин jQuery.Преимущество здесь в том, что если в какой-то момент в будущем jQueryUI сделает версию, он, скорее всего, будет использовать тот же формат, поэтому преобразование будет простым.
(function($)
{
$.fn.input = function ()
{
return this.each(function ()
{
$(this).addClass("ui-widget ui-widget-content ui-corner-all ui-button");
});
}
})(jQuery);
Назовите его так:
$('input, password').input();
Если вы хотите добавить эффекты наведения и т. Д., Просто добавьте логику в
return this.each(function ()
{
// display logic
});
РЕДАКТИРОВАТЬ: добавлен дополнительный класс "ui-button", чтобы сделать их такими же высотой / отступами и т. Д., Как .button ()
РЕДАКТИРОВАТЬ 2: Это оказалось такой хорошей идеей, которую я реализовал, добавив версию для меток и разрешив передавать собственный CSS.
// some styling for inputs
(function($)
{
$.fn.input = function (css)
{
if (!css)
css = {};
return this.each(function ()
{
$(this).addClass("ui-widget ui-widget-content ui-corner-all ui-button");
$(this).css(css);
});
}
})(jQuery);
// and labels
(function ($)
{
$.fn.label = function (css)
{
if (!css)
css = {};
return this.each(function ()
{
$(this).addClass("ui-widget ui-button");
$(this).css(css);
});
}
})(jQuery);
Тогда тоже стильваши входы / метки.Их класс / стили на самом деле нигде не должны существовать.
$(".client-input").input();
$(".client-label").label({ "min-width": "125px", "text-align": "right" });
Выводит пользовательский интерфейс примерно так - входы и метки соответствуют стилю кнопки.(Выберите нужную работу)