Jquery 如何使我的菜单在第二次单击时调用不同的操作?
我希望我的菜单在单击时将内容向右推 我编写了以下内容,以将.open类添加到site.wrapper .open类有一个“right:-320px”css规则,因此将内容向右拉 在第二次单击菜单图标时,我希望删除.open类,以便内容解析回左侧:0Jquery 如何使我的菜单在第二次单击时调用不同的操作?,jquery,Jquery,我希望我的菜单在单击时将内容向右推 我编写了以下内容,以将.open类添加到site.wrapper .open类有一个“right:-320px”css规则,因此将内容向右拉 在第二次单击菜单图标时,我希望删除.open类,以便内容解析回左侧:0 var first_click = true; links.onclick = function () { if (first_click) { $(".sidebar-menu_btn").click(fun
var first_click = true;
links.onclick = function () {
if (first_click) {
$(".sidebar-menu_btn").click(function () {
setTimeout(function () {
$(".wrapper").addClass("open");
}, 250);
});
first_click = false;
} else {
$(".sidebar-menu_btn").click(function () {
setTimeout(function () {
$(".wrapper").removeClass("open");
}, 05);
});
}
}
您可以使用一个jquery代码,而不是使用addClass和removeClass,它可以同时用于add和remove 只要写下你想添加的点击事件
$(".sidebar-menu_btn").click(function(){
setTimeout(function(){
$(".wrapper").toggleClass("open");
}, 250);
});
因此,当您第一次单击侧栏菜单时,它将添加类打开,第二次它将删除类打开。这里@Anku的答案是好的,但对于
setTimeout
持续时间,我使用hasClass
添加了条件:
$(".sidebar-menu_btn").on('click', function(){
let hasClass = $(".wrapper").hasClass("open");
setTimeout(function(){
$(".wrapper").toggleClass("open");
}, hasClass ? 5 : 250);
});
完美的谢谢,这是对代码的一个很好的扩展。工作请客,谢谢你的贡献!