我有一个触发mouseleave
事件的DIV所以当我离开DIV时它是隐藏的。此DIV包含input#login_user
的表单。我正在检查一个函数中的某些值,见下文:
$(".cart").click(function() {
checkLogin(function(data){
if (data.status) {
// Some code here
} else {
alert("You must login"); // Change
$(".top-bar li, .top-bar li.has-dropdown").trigger("mouseenter");
$("#login_user").focus();
}
});
});
因为您可能会看到data.status
为false,所以会触发事件mouseenter
并且input#login_user
应该关注。如何在触发mouseenter后阻止mouseleave事件?焦点永远不会发生,为什么?
更新
This是具有mouseleave
事件的元素所在的代码(参见第116~132行)。这是checkLogin
的代码:
function checkLogin(callback) {
$.post(Routing.generate('_loginStatus'), null, function(responseData) {
if (callback != undefined)
callback(responseData);
else
handleLoginResponse(responseData);
});
}