2

有时您需要通过 JavaScript 扩展标准 DOM 节点以保存一些自定义信息(例如状态)。我看到两种方法:

  1. 使用data-*属性:node.setAttribute('data-custom', value)
  2. 只需将您的数据直接放入节点对象中:node.__customField = value

我看到的第二种方法是在Google 搜索页面上使用的。他们将字段“__jsaction”放入按钮 DOM 对象中。jQuery在其方法中使用了这种方法的一些变体.data()(它将名为 like 的字段放入节点中jQuery2030201338223880156870.7588401902467012,正如我所见,它在其存储中存储了数据块的索引)。

这两种技术的缺点是可能发生冲突(但是 jQuery 解决方案看起来还不错)。但是……他们还有其他更可靠的方法吗?

4

0 回答 0