JSFiddle - React, Tailwind, and code Playground
HTML
<nav id="navigation">
<ul>
<li class="drop">Option 1
<div class="submenu">
<ul>
<li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li>
<li>Aliquam tincidunt mauris eu risus.</li>
<li>Vestibulum auctor dapibus neque.</li>
<li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li>
</ul>
</div>
</li>
<li class="drop">Option 2
<div class="submenu">
<ul>
<li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li>
<li>Aliquam tincidunt mauris eu risus.</li>
<li>Vestibulum auctor dapibus neque.</li>
<li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li>
</ul>
</div>
</li>
</ul>
</nav>
CSS
body {margin:60px; font-family: sans-serif; font-size:12px;}
ul,ul ul {margin:0;padding:0;}
ul li {
position:relative;
list-style-type: none;
padding:5px 0;
margin:0 10px;
cursor:pointer;
border-bottom:1px solid #ddd;
display:inline-block;
float:left;
}
.submenu {
background:#eee;
display:none;
position:absolute;
width:200px;
top:25px;
left:0;
margin-left:-5px;
}
.hover {
display:block !important;
}
JavaScript
var topNav = $('#navigation'),
drop = topNav.find('.drop'),
myTimer, subMenu;
$('#navigation .drop').each(function(){
var obj = $(this);
obj.hover(function(){
subMenu = obj.find('.submenu');
subMenu.addClass('hover');
},function(){
myTimer = setTimeout(function(){
obj.find('.submenu').removeClass('hover');
},300);
});
})