Это должно сохранить позицию x/y холста, щелкнув элемент canvas как атрибуты данных, но по какой-то причине они не отображаются в HTML, когда я проверяю его с помощью Chrome.
$('#canvas').click(function(e){
$(this).data("pos-x", e.offsetX);
$(this).data("pos-y", e.offsetY);
});
Если я добавлю консольный журнал до этого.data, значения будут там, они не пустые, что, кажется, проблема?
Это кажется очень прямым, так что мне трудно найти проблему.
jQuery читает из data-
, но data('key', value)
не изменяют атрибуты элемента. jQuery использует собственный внутренний хранилище данных. Если вы действительно хотите добавить/изменить data-
, используйте attr()
:
$(this).attr("data-pos-x", e.offsetX);
$(this).attr("data-pos-y", e.offsetY);
data-*
атрибуты?