您必须保存滑块的当前状态,并在onclick事件中相应地执行函数。
Here is your edited fiddle
我在javascript中所做的具体更改
$(window).on("load", function() {
$(".slide-out").animate({ "right": "0px" }, "slow" );
let slideOutVisible = true;
$(".slide-out-tab").click(() => {
if (slideOutVisible) {
$(".slide-out").animate({ "right": "-=300px" }, "slow" );
} else {
$(".slide-out").animate({ "right": "0px" }, "slow" );
}
slideOutVisible = !slideOutVisible;
});
});
我定义了一个存储状态的变量slideOutVisible。如果用户现在单击滑块,则滑块将根据状态进行扩展或缩回。然后状态被否定。意味着它变成了自己的反面。
因此,如果slideOutVisible=true,它将被设置为“not slideOutVisible”,在这种情况下为false。