Jquery数据属性问题

时间:2013-10-21 17:55:51

标签: javascript jquery

这应该将画布点击的x / y位置保存为canvas元素作为数据属性,但出于某种原因,当我使用Chrome检查它时,它们不会出现在HTML中。

$('#canvas').click(function(e){
    $(this).data("pos-x", e.offsetX);
    $(this).data("pos-y", e.offsetY);
});

如果我在this.data之前添加一个控制台日志,那么值就在那里,它们是不是空的,这似乎是什么问题?

看起来非常直接,所以我很难看到问题。

1 个答案:

答案 0 :(得分:3)

jQuery从data-属性读取,但data('key', value)不会修改元素属性。 jQuery使用自己的内部数据存储。如果您确实想要添加/更改data-属性,请使用attr()

$(this).attr("data-pos-x", e.offsetX);
$(this).attr("data-pos-y", e.offsetY);