ECMA6函数声明样式不起作用

时间:2017-09-20 09:45:38

标签: javascript jquery

如果parent是jQuery元素,那么当我这样做时:

parent.change(function (e) {
    e.preventDefault();
    console.log($(this));
    console.log($(this).data('tab'));
});

这是有效的,但是当我这样做时:

parent.change((e) => {
    e.preventDefault();
    console.log($(this));
    console.log($(this).data('tab'));
});

它不起作用,为什么?

1 个答案:

答案 0 :(得分:1)

this关键字get a different context within arrow functions
试试这个:

parent.change((e) => {
    e.preventDefault();
    console.log($(e.target));
    console.log($(e.target).data('tab'));
});