Trzymanie danych w DOMu

Może się zdarzyć potrzeba zapisania danych w obrębie węzła DOM.
Standardem jest używanie atrybutów "data-[...]".
Można się do nich odwołać przy pomocy element.dataset.[...]

<p data-state="zwiniety" data-user-clicked="false">
  xxx
</p>

<script>
  var x = document.querySelector("p");
  alert(x.dataset.state);
  alert(x.dataset.userClicked);
</script>