如何在每次切换后切换2个类并设置cookie?

时间:2012-07-30 09:42:00

标签: jquery

点击一个按钮,我想要发生三件事,一个slideToggle,两个类之间的切换,以及一个cookie的设置。我前两项工作正常,我现在需要将companyDescriptionDiv的Cookie设置为openedclosed,具体取决于#showhide-company-description是否已打开或关闭

$(document).on('click', "#showhide-company-description", function () {
    $("#companydescription").slideToggle("slow", function () {
        $("#showhide-company-description").toggleClass("opened").toggleClass("closed");
    });
});

2 个答案:

答案 0 :(得分:1)

顺便说一下,您不必两次调用toggleClass,您可以将逗号分隔的类列表传递给切换,例如toggleClass('open,closed')。就个人而言,我这样做:

$(document).on('click', "#showhide-company-description", function () {
    var $toggler = $(this);
    $("#companydescription").slideToggle("slow", function () {
        var isOpen = $toggler.toggleClass('opened, closed').hasClass('opened');
        if(isOpen) {
            setCookie.routine();
        });
    });
});

这将执行切换并同时返回其“状态”。

答案 1 :(得分:0)

检查班级:

if ($("#showhide-company-description").hasClass("opened")) {
  //set cookie
}

Set cookie