マウスが .login-content の上に置かれたときに、login-btn がホバー状態のままになるようにします。私はすでにこれを試みましたが、今のところ、ホバー時にdivを表示および非表示にしますが、.login-contentがホバーされるとlogin-btnがホバー状態を失い、ホバーされると.login-contentが消えます。
更新:
現在の問題は、マウスをログインの上に置いてから直接離した場合..子要素の上に置くのではなく、.hovered スタイルが残ることです。このままではいけません。
HTML は次のとおりです。
<li><a href="#" class="login-btn">Login</a>
<div class="login-content">
<form name="login-form" action="" method="post">
<input type="email" name="email" value="" placeholder="E-mail" />
<input type="password" name="password" value="" placeholder="Password" />
<input type="submit" name="login" value="Login" class="form-login" />
</form>
</div>
</li>
jQuery コードは次のとおりです。
$(document).ready(function () {
$(".login-btn").hover(
function() {
clearTimeout($(this).data('hoverTimeoutId'));
$(".login-content").show();
$(this).addClass('hovered');
},
function() {
clearTimeout($(this).data('hoverTimeoutId'));
$(this).data('hoverTimeoutId', setTimeout(function () {
$(this).removeClass('hovered');
$(".login-content").hide();
} ,500));
});
$('.login-content').hover(
function(){
clearTimeout($(".login-btn").data('hoverTimeoutId'));
},
function(){
$(".login-content").hide();
$(".login-btn").removeClass('hovered');
});
});
さらにデバッグが必要な場合は、 Web ページをhttp://www.domainandseo.com/portfolio/1may/index.htmlで見つけることもできます。
ありがとう