1

此代码在 chrome 上运行良好,但不适用于 IE 或 Firefox。

$('.modal').on("click", ".action", function() {
    if($(event.target).hasClass('added')) {
        if($(event.target).hasClass('remove_vehicle')) {
           //code
        }

我在 Firefox 控制台上收到此错误:

ReferenceError: event is not defined
[Break On This Error]   

if($(event.target).hasClass('added')) {

这里有什么问题?两者event.triggerhasClass应该在 Firefox 上工作。

4

2 回答 2

8

尝试这个 -

$('.modal').on("click", ".action", function(event) { // see the difference in this line 
    if($(event.target).hasClass('added')) {
        if($(event.target).hasClass('remove_vehicle')) {
           //code
        }
于 2013-04-25T10:34:55.903 回答
0

您可以使用this而不是event.target. 事实上event,它是一个保留变量,可能在某些浏览器上定义,但在其他浏览器上却没有。正确的做法是这样的:

$('.modal').on('click', '.action', function() {
    if ($(this).hasClass('added') && $(this).hasClass('remove_vehicle')) {  
        //code
    }
});
于 2013-04-25T10:37:06.187 回答