<html>
<head>
<style type="text/css">
.CustomSelectControl{
width:200px;
font-family: Arial, Helvetica, Sans-Serif;
font-size: smaller;
}
.TopLine{
padding: 0px;
margin: 0px;
background-color: #ddddff;
}
.SelectedOption{
padding: 0px;
margin: 0px;
border-left: 2px solid #9999ff;
border-top: 2px solid #9999ff;
border-right: 0px none #ffffff;
border-bottom: 2px solid #ffffff;
vertical-align: middle;
width: 184px;
}
.downArrow{
padding: 0px;
margin: 0px;
width:16px;
border-left: 2px solid #ffffff;
border-top: 2px solid #ffffff;
border-right: 2px solid #9999ff;
border-bottom: 2px solid #9999ff;
text-align: center;
vertical-align: middle;
background-color: #ccccff;
color: #9999ff;
}
.OptionList{
height:100px;
background-color: #eeeeff;
overflow-x:hidden;
overflow-y:auto;
scrollbar-3dlight-color:#ffffff;
scrollbar-arrow-color:#9999ff;
scrollbar-base-color:#ccccFF;
scrollbar-darkshadow-color:#9999ff;
scrollbar-face-color:#ccccFF;
scrollbar-highlight-color:#ffffff;
scrollbar-track-color:#aaaaFF;
scrollbar-shadow-color:#9999ff;
border-left: 1px solid #999999;
border-right: 1px solid #999999;
border-bottom: 2px solid #ffffff;
}
.SelectOption{
background-color: #eeeeff;
color: #000000;
border-bottom: 1px solid #999999;
}
.SelectOption_Hilite{
background-color: #333366;
color: #eeeeff;
border-bottom: 1px solid #999999;
}
</style>
<script language="JavaScript" type="text/javascript">
function showOptions(objClickedOn){
event.cancelBubble = true;
var parentObj = objClickedOn.parentElement;
var childlist = parentObj.children;
var optionlist = childlist.item(1);
optionlist.style.display="block";
}
function selectNewOption(objClickedOn){
event.cancelBubble = true;
var parentObj = objClickedOn.parentElement;
var grandParentObj = parentObj.parentElement;
var childlist = grandParentObj.children;
var topline = childlist.item(0);
var selecteditem = topline.children.item(0).children.item(0);
selecteditem.innerText = event.srcElement.innerText;
hideOptions();
}
function hideOptions(){
var alldivs = document.getElementsByTagName('div');
for(var i = 0; i < alldivs.length; i++){
var currDiv = alldivs.item(i);
if(currDiv.className == "OptionList"){
currDiv.style.display="none";
}
}
}
function hiliteOption(objThis){
event.cancelBubble= true;
if(event.srcElement.className != "OptionList"){
var childs = objThis.children;
for(var i = 0; i < childs.length; i++){
var child = childs.item(i);
child.className = "SelectOption";
}
event.srcElement.className = "SelectOption_Hilite";
}
}
</script>
</head>
<body onclick="hideOptions()">
<div class="CustomSelectControl">
<div class="TopLine" onclick="showOptions(this)"><span class="SelectedOption">Selected Option</span><span class="downArrow">▼</span></div>
<div class="OptionList" onclick="selectNewOption(this)" onmouseover="hiliteOption(this)" style="display:none;">
<div class="SelectOption">Selected Option</div>
<div class="SelectOption">Some Option</div>
<div class="SelectOption">Some Other Option</div>
<div class="SelectOption">Another Option</div>
<div class="SelectOption">Yet Another Option</div>
<div class="SelectOption">Yet Another Option 2</div>
<div class="SelectOption">Yet Another Option 3</div>
<div class="SelectOption">Yet Another Option 4</div>
<div class="SelectOption">Yet Another Option 5</div>
</div>
</div>
</body>
</html>