Замена для методов getUserData/setUserData в DOM3
Итак, у нас есть некоторый старый код расширения Firefox, который использует методы DOM3 get/setUserData()
передавать данные в DOM. К сожалению, они устарели в DOM4, поэтому Firefox планирует отказаться от их поддержки, и Chrome никогда не поддерживал их.
Есть ли кросс-браузерная замена? JQuery-х $.data
кажется, вариант, но "чистый" JavaScript будет предпочтительнее.
3 ответа
Итак, в конце концов, мы решили использовать jQuery, базовая библиотека всего около 75 тыс., И она решает проблему очень чисто:
element.getUserData('foo') --> $(element).data('foo')
element.setUserData('foo', 'bar', null) --> $(element).data('foo', 'bar')
Использовать пользовательское событие, которое может хранить данные в detail
Ссылка: Как я могу перенести данные в расширение Firefox с веб-страницы
Просто установите любое свойство на элементе.
element.key = value;
Элементы / узлы DOM - это просто объекты JavaScript. Чтобы избежать конфликта имен с нативными свойствами (например, id
и т. д.), вы можете добавить к своим клавишам подчеркивание.
element._id = "foo";