Das ist eine jQuery Eigenschaft. Wenn data-atr im Markup enthalten ist, liefert .data('atr') den Inhalt des Data-Attributs. Andersrum erzeugt die Set-Methode .data('atr', 123) kein HTML-Attribut sondern speichert das jQuery-intern.
Wenn Du das data-Attribut unbedingt im Markup haben willst, um mit CSS oder jQuery-Selektoren darauf zugreifen zu können, solltest Du es mit .attr('data-atr', 123) probieren. Ich hoffe, dass jQuery das nicht wegoptimiert :)
Siehe auch hier
Rolf