首先,我验证元素的文本是否为“ocultar menu”,如果是,我更改文本并将隐藏类添加到其他一些元素。我的意图是该函数在那里中断,并且仅在事件开始时查看文本的值,而当我在函数内部更改它时则看不到。但是当我单击一次时,它在浏览器的控制台中显示为隐藏,非常快,就像函数检查值并继续检查并传入 if 和 else 部分代码。我使用了 StopPropagation() 但不起作用,我尝试将 on 事件更改为单击但也不起作用。需要帮助,谢谢。
var $position = $("#ocult-menu").position();
$("#ocult-menu").on("click",function(){
var $text = $(this).find('p').text();
if ($text == "ocultar menu"){
$(".info").addClass("hide");
$(".photo").addClass("hide");
$(".map").addClass("hide");
$(".similar").addClass("hide");
$(".share").addClass("hide");
$("#menu-single").offset({left: $position.left});
$(".exibir").css("background-position","-1px 430px");
$(this).find('p').text("exibir menu");
}
else if( $text == "exibir menu"){
$(".info").removeClass("hide");
$(".photo").removeClass("hide");
$(".map").removeClass("hide");
$(".similar").removeClass("hide");
$(".share").removeClass("hide");
$("#menu-single").offset({left: $position.left});
$(this).find('p').text("ocultar menu");
}
});