我正在尝试对slideToggle进行切换,然后再对之进行切换类,但是通过添加切换类,slideToggle不会“滑动”任何人都知道我该如何解决这个问题?
小提琴和下面的代码。
$(function () {
$(".expand").on("click", function () {
$(this).next().slideToggle().toggleClass('slidein');
$expand = $(this).find(">:first-child");
if ($expand.text() == "\u25B6") {
$expand.text("\u25BC");
} else {
$expand.text("\u25B6");
}
});
});
它运行良好,但是您隐藏了元素,然后添加了该类,因此看不到toggleClass
。
您在CSS文件和JS逻辑中犯了一些错误。删除CSS3过渡,它将正常运行。
transition: all 1s ease-in-out;
最后,对不带toggle
方法的代码进行排序,如下所示:
$(function () {
$(".expand").on("click", function () {
if( $(this).parent().find('.detail').css('display') == 'block' ){
$(this).parent().find('.detail').slideUp();
$(this).parent().find('#titles').animate({'left' : -200});
} else {
$(this).parent().find('.detail').slideDown();
$(this).parent().find('#titles').animate({'left' : 0});
}
});
});
请参阅我的工作演示:JSBIN。这是您需要的吗?
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句