JQuery-Mobile
view release on metacpan or search on metacpan
lib/JQuery/Mobile.pm view on Meta::CPAN
'app-title' => '', # <title> in <head>
# a list of default allowed HTML and data-* attributes for UI components (Reference: http://api.jquerymobile.com/data-attribute/)
'header-footer-html-attribute' => ['id', 'class'],
'header-footer-data-attribute' => ['id', 'fullscreen', 'position', 'theme'],
'navbar-html-attribute' => ['id', 'class'],
'navbar-data-attribute' => ['disable-page-zoom', 'enhance', 'fullscreen', 'iconpos', 'tap-toggle', 'theme', 'transition', 'update-page-padding', 'visible-on-page-show'],
'navbar-item-html-attribute' => ['id', 'class', 'target'],
'navbar-item-data-attribute' => ['ajax', 'icon', 'iconpos', 'iconshadow','prefetch', 'theme'],
'page-html-attribute' => ['id', 'class'],
# combine data-attributes for page and dialog
'page-data-attribute' => ['add-back-btn', 'back-btn-text', 'back-btn-theme', 'close-btn', 'close-btn-text', 'corners', 'dom-cache', 'enhance', 'overlay-theme', 'role', 'shadow','theme', 'title', 'tolerance', 'url'],
'table-html-attribute' => ['id', 'class'],
'table-data-attribute' => ['mode'],
'table-head-html-attribute' => ['id', 'class'],
'table-head-data-attribute' => ['priority'],
'panel-html-attribute' => ['id', 'class'],
'panel-data-attribute' => ['corners', 'overlay-theme', 'shadow', 'theme', 'tolerance', 'position-to', 'rel', 'role', 'transition'],
'popup-html-attribute' => ['id', 'class'],
'popup-data-attribute' => ['animate', 'dismissible', 'display', 'position', 'position-fixed', 'swipe-close', 'role', 'theme'],
'listview-html-attribute' => ['id', 'class'],
'listview-data-attribute' => ['autodividers', 'count-theme', 'divider-theme', 'enhance', 'filter', 'filter-placeholder', 'filter-reveal', 'filter-theme', 'filtertext', 'header-theme', 'inset', 'split-icon', 'split-theme', 'theme'],
'listview-item-html-attribute' => ['id', 'class'],
'listview-item-data-attribute' => ['ajax', 'mini', 'rel', 'theme', 'transition'],
'collapsible-html-attribute' => ['id', 'class'],
'collapsible-data-attribute' => ['collapsed', 'collapsed-icon', 'content-theme', 'expanded-icon', 'iconpos', 'inset', 'mini', 'theme'],
'collapsible-set-html-attribute' => ['id', 'class'],
'collapsible-set-data-attribute' => ['collapsed-icon', 'content-theme', 'expanded-icon', 'iconpos', 'inset', 'mini', 'theme'],
lib/JQuery/Mobile.pm view on Meta::CPAN
'button-html-attribute' => ['id', 'name', 'class', 'maxlength', 'size', 'type', 'value'],
'button-html-anchor-attribute' => ['id', 'class', 'href', 'target'],
'button-data-attribute' => ['ajax', 'corners', 'dialog', 'direction', 'dom-cache', 'external', 'icon', 'iconpos', 'iconshadow', 'inline', 'mini', 'position-to', 'prefetch', 'rel', 'role', 'shadow', 'theme', 'transition'],
'form-html-attribute' => ['id', 'action', 'class', 'enctype', 'method'],
'form-data-attribute' => ['enhance', 'theme', 'ajax'],
'input-html-attribute' => ['id', 'class', 'disabled', 'max', 'maxlength', 'min', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'size', 'type', 'value', 'accept', 'capture'],
'input-data-attribute' => ['clear-btn', 'clear-btn-text', 'corners', 'highlight', 'icon', 'iconpos', 'iconshadow', 'inline', 'mini', 'shadow', 'theme', 'track-theme'],
'textarea-html-attribute' => ['id', 'name', 'class', 'rows', 'cols', 'readonly', 'disabled', 'title', 'required', 'placeholder', 'title', 'pattern'],
'textarea-data-attribute' => ['clear-btn', 'clear-btn-text', 'mini', 'theme'],
'select-html-attribute' => ['id', 'class', 'size', 'maxlength', 'readonly', 'disabled', 'title', 'required', 'placeholder', 'title', 'pattern', 'multiple'],
'select-data-attribute' => ['icon', 'iconpos', 'inline', 'mini', 'native-menu', 'overlay-theme', 'theme', 'role'],
'radio-checkbox-html-attribute' => ['id', 'class', 'readonly', 'disabled', 'title', 'required', 'placeholder', 'title', 'pattern', 'value'],
'radio-checkbox-data-attribute' => ['mini', 'theme'],
'rangeslider-html-attribute' => ['id', 'name', 'class'],
'rangeslider-data-attribute' => ['highlight', 'mini', 'theme', 'track-theme'],
'label' => sub {
my $args = shift;
return '<strong>' . $args->{label} . '</strong>' if $args->{required};
return $args->{label};
},
'invalid' => sub {
lib/JQuery/Mobile.pm view on Meta::CPAN
my $jquery_mobile = JQuery::Mobile->new(
config => {
'header-footer-html-attribute' => ['id', 'class'],
'header-footer-data-attribute' => ['id', 'fullscreen', 'position', 'theme'],
'navbar-html-attribute' => ['id', 'class'],
'navbar-data-attribute' => ['disable-page-zoom', 'enhance', 'fullscreen', 'iconpos', 'tap-toggle', 'theme', 'transition', 'update-page-padding', 'visible-on-page-show'],
'navbar-item-html-attribute' => ['id', 'class', 'target'],
'navbar-item-data-attribute' => ['ajax', 'icon', 'iconpos', 'iconshadow','prefetch', 'theme'],
'page-html-attribute' => ['id', 'class'],
# combine data-attributes for page and dialog
'page-data-attribute' => ['add-back-btn', 'back-btn-text', 'back-btn-theme', 'close-btn', 'close-btn-text', 'corners', 'dom-cache', 'enhance', 'overlay-theme', 'role', 'shadow','theme', 'title', 'tolerance', 'url'],
'popup-html-attribute' => ['id', 'class'],
'popup-data-attribute' => ['corners', 'overlay-theme', 'shadow', 'theme', 'tolerance', 'position-to', 'rel', 'role', 'transition'],
'listview-html-attribute' => ['id', 'class'],
'listview-data-attribute' => ['autodividers', 'count-theme', 'divider-theme', 'enhance', 'filter', 'filter-placeholder', 'filter-theme', 'filtertext', 'header-theme', 'inset', 'split-icon', 'split-theme', 'theme'],
'listview-item-html-attribute' => ['id', 'class'],
'listview-item-data-attribute' => ['ajax', 'mini', 'rel', 'theme', 'transition'],
'collapsible-html-attribute' => ['id', 'class'],
'collapsible-data-attribute' => ['collapsed', 'collapsed-icon', 'content-theme', 'expanded-icon', 'iconpos', 'inset', 'mini', 'theme'],
'collapsible-set-html-attribute' => ['id', 'class'],
'collapsible-set-data-attribute' => ['collapsed-icon', 'content-theme', 'expanded-icon', 'iconpos', 'inset', 'mini', 'theme'],
'controlgroup-html-attribute' => ['id', 'class'],
'controlgroup-data-attribute' => ['enhance', 'iconpos', 'theme', 'type'],
'button-html-attribute' => ['id', 'name', 'class', 'maxlength', 'size', 'type', 'value'],
'button-html-anchor-attribute' => ['id', 'class', 'href', 'target'],
'button-data-attribute' => ['ajax', 'corners', 'dialog', 'direction', 'dom-cache', 'external', 'icon', 'iconpos', 'iconshadow', 'inline', 'mini', 'position-to', 'prefetch', 'rel', 'role', 'shadow', 'theme', 'transition'],
'form-html-attribute' => ['id', 'action', 'class', 'enctype', 'method'],
'form-data-attribute' => ['enhance', 'theme', 'ajax'],
'input-html-attribute' => ['id', 'class', 'disabled', 'max', 'maxlength', 'min', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'size', 'type', 'value', 'accept', 'capture'],
'input-data-attribute' => ['clear-btn', 'clear-btn-text', 'corners', 'highlight', 'icon', 'iconpos', 'iconshadow', 'inline', 'mini', 'shadow', 'theme', 'track-theme'],
'textarea-html-attribute' => ['id', 'name', 'class', 'rows', 'cols', 'readonly', 'disabled', 'title', 'required', 'placeholder', 'title', 'pattern'],
'textarea-data-attribute' => ['clear-btn', 'clear-btn-text', 'mini', 'theme'],
'select-html-attribute' => ['id', 'class', 'size', 'maxlength', 'readonly', 'disabled', 'title', 'required', 'placeholder', 'title', 'pattern'],
'select-data-attribute' => ['icon', 'iconpos', 'inline', 'mini', 'native-menu', 'overlay-theme', 'placeholder', 'theme'],
'radio-checkbox-html-attribute' => ['id', 'class', 'readonly', 'disabled', 'title', 'required', 'placeholder', 'title', 'pattern', 'value'],
'radio-checkbox-data-attribute' => ['mini', 'theme']
}
);
The C<label> parameter accepts a sub callback to alter how form field labels are being generated:
my $jquery_mobile = JQuery::Mobile->new(
config => {
'label' => sub {
( run in 0.887 second using v1.01-cache-2.11-cpan-49f99fa48dc )