jQueryMobile は、さまざまな data-xxx 属性を探して DOM を処理する load イベント ハンドラーをページに追加します。それらが見つかると、要素のスタイルを設定するだけではありません。
多くの場合、data-role に関連付けられたタイプのウィジェットを作成します。たとえば、 <div data-role="header"> はツールバー ウィジェットに変換され、その作成によってその要素内の DOM が大幅に変更される可能性があります。
ボタンなどのいくつかの単純なウィジェットでは、一部のクラスが追加される以外はほとんど何も起こらないことがわかっているので、プロセスをショートカットして直接追加しないのはなぜでしょうか? それは機能しますが、将来性はありません。歴史のさまざまな時点で、さまざまなバージョンの jQM がさまざまな DOM 構造を持つボタンを作成していました。したがって、個人的には、jQM をショートカットしないで、適切と思われるデータ属性を処理させるのが最善だと思います。
そうは言っても、データ属性ではなくクラスによって識別されるウィジェットを作成することはまだ可能でした。これは、jQM の前に人々がこれらのことを行っていた方法です。しかし、これらのクラスにも CSS が関連付けられているという期待があるかもしれません。data- 属性を使用すると、これが単なるスタイリングではなく、構造的/役割的なものであることが明確になります。