gpt4 book ai didi

javascript - 加号不会变回来

转载 作者:行者123 更新时间:2023-11-28 13:42:03 26 4
gpt4 key购买 nike

我有一个简单的切换脚本,如下所示:http://jsfiddle.net/M4pZc/

当页面最初显示时,会显示 +,切换时会更改为 -。但再次单击时,不会变回 +

为什么这不起作用?我所做的只是 if/else(如果元素可见),因此当 #hidden div 不可见时,它应该改回 +。

这是 Jquery:

$(function(){
$("#showMore").click(function(){
$("#hiddenMore").slideToggle(200);
$("#hiddenMore").is(":visible") ? $("#showMore").text("More -") : $("#showMore").text("More +");
});
});

最佳答案

需要将其放在slideToggle的回调下,因为不能保证动画完成后执行元素可见检查:

 $("#showMore").click(function(){
$("#hiddenMore").slideToggle(200, function(){
$(this).is(":visible") ? $("#showMore").text("More -") : $("#showMore").text("More +");
});

});

Fiddle

您也可以尝试这种方式,使用文本的函数回调在动画完成时交换文本:

$(function () {
$("#showMore").click(function () {
var $this = $(this);
$("#hiddenMore").slideToggle(200, function(){
$this.text(function (_, text) {
return text == "More -" ? "More +" : "More -";
});
});
});
});

Fiddle

关于javascript - 加号不会变回来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17242821/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com