Javascript jquery addClass()在removeClass()之后不工作

Javascript jquery addClass()在removeClass()之后不工作,javascript,jquery,Javascript,Jquery,我有两个jquery函数。调用第一个函数类时,将删除两个onclick属性 但是在调用函数删除类之后,第二个函数将不起作用,因此不能再添加类和onclick事件 编辑1:如前所述,第一个功能正在工作!onclick事件正在更改,类正在删除。在第二个函数中再次添加相同的类和函数时,它不起作用!当添加一个新类时,它正在工作,但当添加一个已删除的类或onclick事件时,它不工作 代码如下: // show info function showKursInfo() { $(".kright")

我有两个jquery函数。调用第一个函数类时,将删除两个onclick属性

但是在调用函数删除类之后,第二个函数将不起作用,因此不能再添加类和onclick事件

编辑1:如前所述,第一个功能正在工作!onclick事件正在更改,类正在删除。在第二个函数中再次添加相同的类和函数时,它不起作用!当添加一个新类时,它正在工作,但当添加一个已删除的类或onclick事件时,它不工作

代码如下:

// show info
function showKursInfo() {
    $(".kright").removeClass("kursMobileOpen");
    $(".kleft").removeClass("kursMobileInfo");

    $(".kright").attr("onclick","#");
    $(".kheader").attr("onclick","hideKursInfo('someInfo');");
}
// hide info
function hideKursInfo() {
    $(".kright").addClass("kursMobileOpen");
    $(".kleft").addClass("kursMobileInfo");

    $(".kright").attr("onclick","showKursInfo('someInfo');");
    $(".kheader").attr("onclick","#");
}
谢谢你的帮助


对于那些不喜欢这个问题的人:请告诉我为什么这个问题不好?

不要使用
attr
注册点击事件。使用
单击
或上的

// show info
function showKursInfo() {
    $(".kright").removeClass("kursMobileOpen");
    $(".kleft").removeClass("kursMobileInfo");

    $(".kright").off("click");
    $(".kheader").on("click", hideKursInfo);
}

// hide info
function hideKursInfo() {
    $(".kright").addClass("kursMobileOpen");
    $(".kleft").addClass("kursMobileInfo");

    $(".kright").on("click", showKursInfo);
    $(".kheader").off("click");
}

不要对注册单击事件使用
attr
。使用
单击
上的

// show info
function showKursInfo() {
    $(".kright").removeClass("kursMobileOpen");
    $(".kleft").removeClass("kursMobileInfo");

    $(".kright").off("click");
    $(".kheader").on("click", hideKursInfo);
}

// hide info
function hideKursInfo() {
    $(".kright").addClass("kursMobileOpen");
    $(".kleft").addClass("kursMobileInfo");

    $(".kright").on("click", showKursInfo);
    $(".kheader").off("click");
}

请添加HTML代码,如果可能,请添加到codepen或JSFIDLE以查看问题。您不需要使用jQuery设置
onclick
属性。关键是它为您提供了一组事件方法:@BadHorsie,但由于类的原因,这实际上不是一个解决方案,这是主要问题!已经投票通过了,顺便说一句,attr的作用是什么?请添加HTML代码,如果可能的话,添加到codepen或JSFIDLE以查看问题。您不需要使用jQuery设置
onclick
属性。关键是它为您提供了一组事件方法:@BadHorsie,但由于类的原因,这实际上不是一个解决方案,这是主要问题!顺便说一句,attr支持什么?这并不能解决类的问题原因。那么你应该给我们更多的代码、错误或其他东西。因为它是这样工作的。请参阅此处:@moritzm3为了证明您的旧代码不起作用:@moritzm3您使用kheader click侦听器到底想实现什么@eisbehrs是对的onclick attr有点混乱,这并不能解决类的问题。那么您应该给我们更多的代码、错误或其他信息。因为它是这样工作的。请参阅此处:@moritzm3为了证明您的旧代码不起作用:@moritzm3您使用kheader click侦听器到底想实现什么@eisbehrs是对的,因为单击attr有点混乱