场景:在 ul 列表中有 2 个链接,li:我的信息和登录 当在链接上使用 HOVER 时,一个链接必须显示一个框(带有淡入动画),其中包含一个表单。当您将鼠标悬停在链接上时,其他链接会在框内显示一个按钮(带有淡入动画)。
当用户鼠标退出链接“登录”或鼠标退出表单时,表单必须淡出。带有按钮的框,当用户鼠标移出“我的信息”链接或鼠标移出框时,必须淡出。
问题(两者相同):当 MOUSEOUT 链接我的信息时,表单消失。当 MOUSEOUT 链接 LOG IN 时,div 内的按钮消失。
注意:1/当鼠标在链接上或在表单上时,表单必须可见 2/当鼠标在链接上或在带按钮的盒子上时,带按钮的框必须可见
参考:检查屏幕最顶部的 www.conforama.fr,链接是带有图标的“Compte”,它有一个类:“with-hover-menu”。当您将鼠标悬停在它上面时,将出现该表单。当您将鼠标移出链接或表单时,表单将消失。我需要同样的,但使用淡入淡出。
现在你可以在这个 jsfiddle 中查看下面的代码:http: //jsfiddle.net/75HYL/19/但它根本不起作用。我不知道如何实现这一点。想了解和学习...!!
<ul class="links">
<li class="classA"><a><span>My info</span></a></li>
<li class="classB"><a><span>Log in</span></a></li>
</ul>
<div id="userInfo">USER MUST BE ABLE TO CLICK THE BUTTON BELOW, SO THIS BOX MUST STAY VISIBLE<br/>
<input type ="button" value="OKAY"/>
<div id="login" >
<div class="form">
<form>
<input type="textfield" value="enter your email"></input>
<input type="checkbox"><option>remember me? </option><input>
<input type="button" value="Click me"/>
</form>
</div>
</div>
</div>
<style>
.links li { display:inline-block;cursor:pointer; }
.links li { padding:0 4px 0 1px; }
.links li.classA {width:147px; height:77px;background:url(../images/sprites01.png) no-repeat -226px 0px;}
.links li.classB {width:147px; height:77px;background:url(../images/sprites01.png) no-repeat -226px 0px;}
.links li.classA span {}
.links li.classB span {}
.links li.classA:hover {background:url(../images/sprites01.png) no-repeat -226px -80px;}
.links li.classB:hover {background:url(../images/sprites01.png) no-repeat -226px -80px;}
.links li.classA a {color:#fff;text-transform:uppercase;background:#00aaff;padding:5px 5px 0 20px;margin:5px 0 0;font-size:1em;height:50px;display:block;}
.links li.classB a {color:#00aaff;text-transform:uppercase;background:orange;padding:5px 5px 0 20px;margin:5px 0 0;font-size:1em;height:50px;display:block;}
#login {display:none;width:250px;height:250px; background:#bbb;color:#000;border:1px solid red;}
#userInfo{display:none;width:250px;height:250px; background:#bbb;color:#000;border:1px solid red;}
</style>
<script>
$("li.classA").hover(function() {
$("#userInfo").fadeIn('fast').css('display', 'block');
});
$("#login, .classA").mouseleave(function() {
$("#userInfo").fadeOut('fast').css('display', 'none');
});
$("li.classB").hover(function() {
$("#login").fadeIn('fast').css('display', 'block');
});
$("#login, .classA").mouseleave(function() {
$("#login").fadeOut('fast').css('display', 'none');
});
</script>