2014-10-05 84 views
0

我的jQuery代码出现问题我觉得解决方案非常简单,但我只是无法得到它,它是一个简单的.on单击函数与类但是,当我点击元素它给了我这个错误“未捕获TypeError:无法读取属性'未定义的removeClass'有没有人知道我在这里做错了什么?未捕获TypeError:无法读取undefined的属性'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"); 
}); 

在此先感谢!

回答

2

ethe 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"); 
+0

我想使用事件对象并混合了触发器和target = p谢谢! – 2014-10-06 08:56:59

相关问题