JSFiddle - React, Tailwind, and code Playground
HTML
<link rel="stylesheet" href="http://code.jquery.com/ui/1.9.0/themes/base/jquery-ui.css">
<script src="http://code.jquery.com/jquery-1.8.2.js"></script>
<script src="http://code.jquery.com/ui/1.9.0/jquery-ui.js"></script>
<div class="demo">
<button>Select a city</button>
<ul>
<li><a href="#">Amsterdam</a></li>
<li><a href="#">Anaheim</a></li>
<li><a href="#">Cologne</a></li>
<li><a href="#">Frankfurt</a></li>
<li><a href="#">Magdeburg</a></li>
<li><a href="#">Munich</a></li>
<li><a href="#">Utrecht</a></li>
<li><a href="#">Zurich</a></li>
</ul>
<div id="log"></div>
</div>
CSS
body { font-size:62.5%; }
.ui-menu { width: 200px; position: absolute; }
.menu4 { height: 200px; overflow-y: auto; overflow-x: hidden; }
.address-item { border-bottom: 1px solid #999; }
.address-header { display: block; margin-bottom: .2em; font-weight: bold; }
.address-content { display: block; margin-bottom: .2em; padding-left: 10px; }
JavaScript
$(function() {
$(".demo button").button({
icons: {
primary: "ui-icon-home",
secondary: "ui-icon-triangle-1-s"
}
}).each(function() {
$(this).next().menu({
select: function(event, ui) {
$(this).hide();
$("#log").append("<div>Selected " + ui.item.text() + "</div>");
},
input: $(this)
}).hide();
}).click(function(event) {
var menu = $(this).next();
if (menu.is(":visible")) {
menu.hide();
return false;
}
menu.menu("blur").show().css({top:0, left:0}).position({
my: "left top",
at: "left bottom",
of: this
});
$(document).one("click", function() {
menu.hide();
});
return false;
})
});