有什么突出的原因,这会在这样的Firefox中打破

时间:2017-09-28 21:10:02

标签: javascript jquery knockout.js

有什么突出的东西为什么会像这样在firefox中破解:

var test = ko.dataFor($(event.target).closest('blah')[0]);

错误消息是:

  

ReferenceError:未定义事件。

IE或Chrome不会发生。

1 个答案:

答案 0 :(得分:1)

IE最初有一个全局事件对象,这意味着它可以在不命名参数

的情况下使用
element.addEventListener('click', function() {
    console.log(event); // would be the object in IE
});

虽然这不是真正的标准行为,但Chrome也决定实施此功能。

在Firefox中,event在上面的代码中未定义,并且参数必须命名,如

element.addEventListener('click', function(event) {
    console.log(event); // works everywhere, ^ becase it's there
});

这是应该如何完成的,而不依赖于全局事件对象