请告诉我,现在一切正常,但有一个项目仍然打开,关闭它吗?
$(document).ready(function () {
var open = $('.open'),
a = $('.location_cont').find('a.open');
$(".item_in ul").customScrollbar({
skin: "default-skin",
hScroll: false,
});
open.on('click',function (e) {
e.preventDefault();
var $this = $(this),
speed = 300;
if ($('.open').hasClass('active') === true) {
$('.open').removeClass('active').next('.item_in').slideUp(speed);
}
if ($this.hasClass('active') === true) {
$this.removeClass('active').next('.item_in').slideUp(speed).find('ul').customScrollbar("resize", true);
} else if ($this.hasClass('active') === false) {
$(".item_in ul").css("resize", true);
$this.addClass('active').next('.item_in').slideDown(speed).find('ul').customScrollbar("resize", true);
} else {
$this.removeClass('active').next('.item_in').slideUp(speed);
$this.addClass('active').next('.item_in').delay(speed).slideDown(speed).find('ul').customScrollbar("resize", true);
}
});
});
答案 0 :(得分:1)
我在小提琴中进行了修改
$(document).ready(function () {
var open = $('.open'),
a = $('.location_cont').find('a.open');
$(".item_in ul").customScrollbar({
skin: "default-skin",
hScroll: false,
});
open.on('click',function (e) {
e.preventDefault();
var speed = 300;
if ($(this).hasClass('active') === true) {
$(this).removeClass('active').next('.item_in').slideUp(speed).find('ul').customScrollbar("resize", true);
} else if ($(this).hasClass('active') === false) {
$(".item_in ul").css("resize", true);
$(this).addClass('active').next('.item_in').slideDown(speed).find('ul').customScrollbar("resize", true);
}
});
});
取消
if ($('.open').hasClass('active') === true) {
$('.open').removeClass('active').next('.item_in').slideUp(speed);
}
并使用$(this)代替变量$ this。
删除最后一个,因为没有必要
答案 1 :(得分:0)
向上滑动时不要删除active
类,以便检查是否显示了当前单击的元素。
open.on('click',function (e) {
e.preventDefault();
var $this = $(this),
speed = 300;
if ($('.open').hasClass('active') === true) {
$('.open').next('.item_in').slideUp(speed);
}
if ($this.hasClass('active') === true) {
$this.removeClass('active').next('.item_in').slideUp(speed).find('ul').customScrollbar("resize", true);
} else {
$(".item_in ul").css("resize", true);
$('.open').removeClass('active');
$this.addClass('active').next('.item_in').slideDown(speed).find('ul').customScrollbar("resize", true);
}
});