2012-11-12 22:08:38 +00:00
|
|
|
<!doctype html>
|
2011-10-08 23:54:36 +00:00
|
|
|
<html lang="en">
|
|
|
|
<head>
|
|
|
|
<meta charset="utf-8">
|
|
|
|
<title>jQuery UI Selectmenu - Default functionality</title>
|
|
|
|
<link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
|
2013-02-09 02:31:43 +00:00
|
|
|
<script src="../../jquery-1.9.1.js"></script>
|
2011-10-08 23:54:36 +00:00
|
|
|
<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() {
|
2011-11-24 10:27:35 +00:00
|
|
|
|
2011-10-08 23:54:36 +00:00
|
|
|
$.widget( "custom.iconselectmenu", $.ui.selectmenu, {
|
|
|
|
_renderItem: function( ul, item ) {
|
2012-12-18 23:20:12 +00:00
|
|
|
var li = $( "<li>" ).data( "ui-selectmenu-item", item ),
|
|
|
|
element,
|
|
|
|
span;
|
|
|
|
|
2011-10-08 23:54:36 +00:00
|
|
|
if ( item.disabled ) {
|
2012-12-18 23:20:12 +00:00
|
|
|
li.addClass( "ui-state-disabled" ).text( item.label );
|
2011-10-08 23:54:36 +00:00
|
|
|
} else {
|
2012-12-18 23:20:12 +00:00
|
|
|
element = item.element;
|
|
|
|
span = $( "<span>", {
|
|
|
|
style: element.attr( "style" ),
|
|
|
|
'class': "ui-icon " + element.attr( "class" )
|
|
|
|
});
|
|
|
|
$( "<a>", {
|
|
|
|
text: item.label,
|
2011-10-08 23:54:36 +00:00
|
|
|
href: '#'
|
2012-12-18 23:20:12 +00:00
|
|
|
}).append( span ).appendTo( li );
|
2011-11-24 10:27:35 +00:00
|
|
|
}
|
|
|
|
|
2011-10-08 23:54:36 +00:00
|
|
|
return li.appendTo( ul );
|
|
|
|
}
|
2011-11-24 10:27:35 +00:00
|
|
|
});
|
|
|
|
|
2012-12-19 23:10:06 +00:00
|
|
|
var files = $( "select#files" ).iconselectmenu();
|
2012-12-18 23:20:12 +00:00
|
|
|
files.iconselectmenu( "menuWidget" ).addClass( "ui-menu-icons" );
|
2011-11-24 10:27:35 +00:00
|
|
|
|
2012-12-19 23:10:06 +00:00
|
|
|
var filesB = $( "select#filesB" ).iconselectmenu();
|
2012-12-18 23:20:12 +00:00
|
|
|
filesB.iconselectmenu( "menuWidget" ).addClass( "ui-menu-icons customicons" );
|
2011-11-24 10:27:35 +00:00
|
|
|
|
2012-12-18 23:20:12 +00:00
|
|
|
var peopleA = $( "select#peopleA" ).iconselectmenu();
|
|
|
|
peopleA.iconselectmenu( "menuWidget").addClass( "ui-menu-icons avatar" );
|
2011-10-08 23:54:36 +00:00
|
|
|
});
|
|
|
|
</script>
|
|
|
|
<style>
|
|
|
|
form { margin: 100px 0 0 0 }
|
|
|
|
h2 { margin: 30px 0 0 0 }
|
|
|
|
fieldset { border: 0; }
|
|
|
|
label { display: block; }
|
|
|
|
select { width: 200px; }
|
2011-11-24 10:27:35 +00:00
|
|
|
|
2011-10-08 23:54:36 +00:00
|
|
|
.ui-selectmenu-menu .ui-menu .ui-icon { top: 0.4em; }
|
|
|
|
.ui-selectmenu-menu .ui-menu .ui-menu-item a { padding-left: 2em; }
|
2011-11-24 10:27:35 +00:00
|
|
|
|
2011-10-08 23:54:36 +00:00
|
|
|
/* select with custom icons */
|
|
|
|
.ui-selectmenu-menu .ui-menu.customicons .ui-menu-item a { padding: 0.5em 0 0.5em 3em; }
|
|
|
|
.ui-selectmenu-menu .ui-menu.customicons .ui-menu-item a .ui-icon { height: 24px; width: 24px; top: 0.2em;}
|
|
|
|
.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; }
|
2011-11-24 10:27:35 +00:00
|
|
|
|
2012-11-13 21:22:40 +00:00
|
|
|
/* select with CSS avatar icons */
|
2011-10-08 23:54:36 +00:00
|
|
|
option.avatar { background-repeat: no-repeat !important; padding-left: 20px; }
|
2012-12-03 22:13:26 +00:00
|
|
|
.avatar .ui-icon { background-position: left top; }
|
2011-10-08 23:54:36 +00:00
|
|
|
</style>
|
|
|
|
</head>
|
|
|
|
<body>
|
2011-11-24 10:27:35 +00:00
|
|
|
|
2011-10-08 23:54:36 +00:00
|
|
|
<div class="demo">
|
|
|
|
|
2011-11-24 10:27:35 +00:00
|
|
|
<form action="#">
|
2011-10-08 23:54:36 +00:00
|
|
|
|
|
|
|
<h2>"popup" style with framework icons</h2>
|
|
|
|
<fieldset>
|
|
|
|
<label for="files">Select a File:</label>
|
|
|
|
<select name="files" id="files">
|
|
|
|
<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>
|
2011-11-24 10:27:35 +00:00
|
|
|
|
2011-10-08 23:54:36 +00:00
|
|
|
<h2>"popup" style with custom icon images</h2>
|
|
|
|
<fieldset>
|
|
|
|
<label for="filesB">Select a File:</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>
|
2011-11-24 10:27:35 +00:00
|
|
|
</fieldset>
|
|
|
|
|
2011-10-08 23:54:36 +00:00
|
|
|
<h2>"dropdown" style with custom avatar 16x16 images as CSS background</h2>
|
|
|
|
<fieldset>
|
|
|
|
<label for="peopleA">Select a Person:</label>
|
|
|
|
<select name="peopleA" id="peopleA">
|
2012-11-13 21:27:50 +00:00
|
|
|
<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>
|
2011-10-08 23:54:36 +00:00
|
|
|
</select>
|
|
|
|
</fieldset>
|
2011-11-24 10:27:35 +00:00
|
|
|
|
2011-10-08 23:54:36 +00:00
|
|
|
</form>
|
|
|
|
|
|
|
|
</div><!-- End demo -->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="demo-description">
|
|
|
|
<p>The whole rendering process is extendable to make custom styling as easy as possible.</p>
|
|
|
|
</div><!-- End demo-description -->
|
|
|
|
|
|
|
|
</body>
|
|
|
|
</html>
|