.toggle()和.slideToggle()方法,都可以实现对元素的循环显示或隐藏(至于参数这里不再多述),那么它们之间的区别主要有两点:
1.toggle:动态效果为从右至左。横向展开。slideToggle:动态效果从下至上。竖向展开。
2.另外一个重要的区别是:.toggle()能够实现元素的“真正”隐藏,而.slidToggle()方法却不能,验证Demo如下:
$("#slidToggle").on('click', function () {$(".slidToggle").toggle();
if ($(".slidToggle").is(":visible")) {
$(this).removeClass("glyphicon-triangle-top").addClass("glyphicon-triangle-bottom");
return;
}
$(this).removeClass("glyphicon-triangle-bottom").addClass("glyphicon-triangle-top");
}),这里的toggle()方法可以实现当点击id为#slidToggle的一个收起图标后(用来收起类.slidToggle中的元素),id为#slidToggle的收起图标会转为展开图标(glyphicon-triangle-top);
但是,如果这样:
$("#slidToggle").on('click', function () {
$(".slidToggle").slidToggle();
if ($(".slidToggle").is(":visible")) {
$(this).removeClass("glyphicon-triangle-top").addClass("glyphicon-triangle-bottom");
return;
}
$(this).removeClass("glyphicon-triangle-bottom").addClass("glyphicon-triangle-top");
}),则不能实现上述的效果。