我的jquery代码有问题我觉得解决方案非常简单但是我无法得到它,它很简单。在一个带有类的元素上单击函数但是当我点击元素时它会给我这个错误" Uncaught TypeError:无法读取属性' removeClass'未定义"有谁知道我在这里做错了什么?
$("body").on( "click", ".fa-caret-right", function(e) {
e.trigger.removeClass("fa-caret-right"); // <--- right here
e.trigger.addClass("fa-caret-down");
e.trigger.parent().next().css("display", "block");
});
$("body").on( "click", ".fa-caret-down", function(e) {
e.trigger.removeClass("fa-caret-down"); // <--- and probably here
e.trigger.addClass("fa-caret-right");
e.trigger.parent().next().css("display", "none");
});
提前感谢!
答案 0 :(得分:2)
e
是the Event
object,它没有名为trigger
的属性。由于trigger
不存在,您无法在其上调用函数。
你尝试在这做什么?:
e.trigger.removeClass("fa-caret-right");
如果要从调用处理程序的元素(被单击的元素)中删除该类,可以使用this
引用该元素:
$(this).removeClass("fa-caret-right");
或者,如果您想使用Event
对象,您可能正在寻找the target
property:
e.target.removeClass("fa-caret-right");