jQuery
$(document).ready(function(e){
$(".DropdownWrapper").focusin(function(e){
$(".Dropdown").css('display', 'block');
});
$(".Item").click(function(e){
var val = $(this).text();
$(".Textfield").val(val);
$(".Dropdown").css('display', 'none');
});
});
HTML
<div class="Content">
<h1>Custom Dropdown Menu For a Textfield By Farris</h1>
<div class="DropdownWrapper">
<input type="text" class="Textfield" placeholder="Animal" />
<div class="Dropdown">
<div class="Item">Lion</div>
<div class="Item">Cat</div>
<div class="Item">Dog</div>
<div class="Item">Monkey</div>
</div>
</div>
</div>
CSS
body{
background-color: #222;
color: #FFF;
font-family: sans-serif;
margin: 0px;
}
.Content{
width: 800px;
height: auto;
overflow: visible;
margin: 30px auto;
}
.Textfield{
width: 220px;
height: 20px;
background-color: #111;
color: #FFF;
font-family: sans-serif;
padding: 15px;
border: none;
outline: none;
border-radius: 3px;
}
.DropdownWrapper{
width: 250px;
height: 50px;
position: relative;
margin-bottom: 10px;
}
.Dropdown{
position: absolute;
top: 50px;
left: 0px;
width: 250px;
height: auto;
overflow: visible;
z-index: 1;
display: none;
}
.Item{
width: 220px;
height: 20px;
padding: 15px;
color: #CCC;
background-color: #111;
}
.Item:hover{
background-color: #000;
cursor: pointer;
color: #FFF;
}
This snippet will work on textfields and buttons