Mouse hover display secondary menu effect jquery implementation
- 2020-03-30 04:13:32
- OfStack
1. The layout:
<div class="show">
<img src="~/images/head_icon.png" />
<div class="drop" style=" display:none; z-index:80000" id="profileMenu">
<ul>
<li>
<a class="pass" style="cursor: pointer"
href='#'>
<span> Change the password </span>
</a>
</li>
<li>
<a class="quit" style="cursor: pointer"
href='#'
><span> exit </span></a>
</li>
</ul>
</div>
</div>
2. Js control:
function dropMenu(obj) {
$(obj).each(function () {
var theSpan = $(this);
var theMenu = theSpan.find(".drop");
var tarHeight = theMenu.height();
theMenu.css({ height: 0, opacity: 0 });
var t1;
function expand() {
clearTimeout(t1);
//theSpan.find('a').addClass("selected");
theMenu.stop().show().animate({ height: tarHeight, opacity: 1 }, 200);
}
function collapse() {
clearTimeout(t1);
t1 = setTimeout(function () {
// theSpan.find('a').removeClass("selected");
theMenu.stop().animate({ height: 0, opacity: 0 }, 200, function () {
$(this).css({ display: "none" });
});
}, 250);
}
theSpan.hover(expand, collapse);
theMenu.hover(expand, collapse);
});
}