diff options
Diffstat (limited to 'demos/selectmenu/custom_render.html')
-rw-r--r-- | demos/selectmenu/custom_render.html | 143 |
1 files changed, 143 insertions, 0 deletions
diff --git a/demos/selectmenu/custom_render.html b/demos/selectmenu/custom_render.html new file mode 100644 index 000000000..fb8127bbd --- /dev/null +++ b/demos/selectmenu/custom_render.html @@ -0,0 +1,143 @@ +<!doctype html> +<html lang="en"> +<head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <title>jQuery UI Selectmenu - Default functionality</title> + <link rel="stylesheet" href="../../themes/base/jquery.ui.all.css"> + <script src="../../jquery-1.10.2.js"></script> + <script src="../../ui/jquery.ui.core.js"></script> + <script src="../../ui/jquery.ui.widget.js"></script> + <script src="../../ui/jquery.ui.position.js"></script> + <script src="../../ui/jquery.ui.menu.js"></script> + <script src="../../ui/jquery.ui.selectmenu.js"></script> + <link rel="stylesheet" href="../demos.css"> + <script> + $(function() { + $.widget( "custom.iconselectmenu", $.ui.selectmenu, { + _renderItem: function( ul, item ) { + var li = $( "<li>", { text: item.label } ); + + if ( item.disabled ) { + li.addClass( "ui-state-disabled" ).text( item.label ); + } else { + $( "<span>", { + style: item.element.attr( "style" ), + "class": "ui-icon " + item.element.attr( "class" ) + }).appendTo( li ); + } + + return li.appendTo( ul ); + } + }); + + $( "#filesA" ) + .iconselectmenu() + .iconselectmenu( "menuWidget" ) + .addClass( "ui-menu-icons" ); + + $( "#filesB" ) + .iconselectmenu() + .iconselectmenu( "menuWidget" ) + .addClass( "ui-menu-icons customicons" ); + + $( "#people" ) + .iconselectmenu() + .iconselectmenu( "menuWidget") + .addClass( "ui-menu-icons avatar" ); + }); + </script> + <style> + h2 { + margin: 30px 0 0 0 + } + fieldset { + border: 0; + } + label { + display: block; + } + select { + width: 200px; + } + + .ui-selectmenu-menu .ui-menu .ui-menu-item a { + padding-left: 2em; + } + + /* select with custom icons */ + .ui-selectmenu-menu .ui-menu.customicons .ui-menu-item { + padding: 0.5em 0 0.5em 3em; + } + .ui-selectmenu-menu .ui-menu.customicons .ui-menu-item .ui-icon { + height: 24px; + width: 24px; + top: 0.1em; + } + .ui-icon.video { + background: url(images/24-video-square.png) 0 0 no-repeat; + } + .ui-icon.podcast { + background: url(images/24-podcast-square.png) 0 0 no-repeat; + } + .ui-icon.rss { + background: url(images/24-rss-square.png) 0 0 no-repeat; + } + + /* select with CSS avatar icons */ + option.avatar { + background-repeat: no-repeat !important; + padding-left: 20px; + } + .avatar .ui-icon { + background-position: left top; + } + </style> +</head> +<body> + +<div class="demo"> + +<form action="#"> + + <h2>Selectmenu with framework icons</h2> + <fieldset> + <label for="filesA">Select a File:</label> + <select name="filesA" id="filesA"> + <option value="jquery" class="ui-icon-script">jQuery.js</option> + <option value="jquerylogo" class="ui-icon-image">jQuery Logo</option> + <option value="jqueryui" class="ui-icon-script">ui.jQuery.js</option> + <option value="jqueryuilogo" selected="selected" class="ui-icon-image">jQuery UI Logo</option> + <option value="somefile">Some unknown file</option> + </select> + </fieldset> + + <h2>Selectmenu with custom icon images</h2> + <fieldset> + <label for="filesB">Select a podcast:</label> + <select name="filesB" id="filesB"> + <option value="mypodcast" class="podcast">John Resig Podcast</option> + <option value="myvideo" class="video">Scott Gonzales Video</option> + <option value="myrss" class="rss">jQuery RSS XML</option> + </select> + </fieldset> + + <h2>Selectmenu with custom avatar 16x16 images as CSS background</h2> + <fieldset> + <label for="people">Select a Person:</label> + <select name="people" id="people"> + <option value="1" class="avatar" style="background-image: url(http://www.gravatar.com/avatar/b3e04a46e85ad3e165d66f5d927eb609?d=monsterid&r=g&s=16);">John Resig</option> + <option value="2" class="avatar" style="background-image: url(http://www.gravatar.com/avatar/e42b1e5c7cfd2be0933e696e292a4d5f?d=monsterid&r=g&s=16);">Tauren Mills</option> + <option value="3" class="avatar" style="background-image: url(http://www.gravatar.com/avatar/bdeaec11dd663f26fa58ced0eb7facc8?d=monsterid&r=g&s=16);">Jane Doe</option> + </select> + </fieldset> + +</form> + +</div> + +<div class="demo-description"> +<p>The whole rendering process is extendable to make custom styling as easy as possible.</p> +</div> +</body> +</html> |