HTML5データ属性を備えたカスタムdata-
属性は、HTML要素にカスタムデータを直接保存できるようにします。このデータは完全にアプリケーション固有であり、ブラウザ自体によって解釈されません。重要な利点は、クラスやIDなどの他の手法に頼る必要なく、任意の情報を要素に関連付けることができることです。
たとえば、ユーザーのIDを<div>要素に保存するには、次の構文を使用します。<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"> <code class="html"><div data-user-id="12345">This div belongs to user 12345.</div></code></pre><div class="contentsignin">ログイン後にコピー</div></div>
<p>ここでは、 <code>data-user-id
カスタム属性であり、「12345」が値です。単一の要素に複数のdata-*
属性を持つことができ、それぞれが異なる情報を保存します。属性名は、キャメルケース(例、 data-userName
)またはsnake_case(例、 data-user_name
)ですが、プロジェクト内で一貫性が推奨されます。値は、文字列、数字、またはブールンである可能性があります。ただし、それらは常にブラウザによって文字列として扱われているため、他のデータ型として使用する場合は、JavaScriptでそれらを解析する必要がある場合があります。
HTML5データ属性を使用するには、いくつかのベストプラクティスに従うために、保守性と明確さを確保することが含まれます。
data-product-price
data-price
よりも優れています。data-app-userId
、 data-app-userName
)。はい、JavaScriptは、DOM要素のdataset
プロパティを使用して、カスタムデータ属性に簡単にアクセスできます。
<code class="javascript">const myDiv = document.querySelector('div[data-user-id]'); const userId = myDiv.dataset.userId; // Accesses the value of data-user-id console.log(userId); // Outputs "12345" //Modifying the data attribute: myDiv.dataset.userName = "John Doe";</code>
dataset
プロパティは、データ属性にアクセスして変更する便利な方法を提供します。 CamelCase属性名はdataset
のCamelCaseプロパティに変換されることに注意してください(たとえば、 data-user-name
dataset.userName
になります)。属性が存在しない場合、アクセスするとundefined
なります。
HTML5データ属性は、他の方法と比較してデータを保存するための明確なアプローチを提供します。
data-
プレフィックスなしでカスタム属性を技術的に追加できます。ただし、これらの属性は、ブラウザまたは将来のHTMLバージョンによって異なる方法で解釈される場合があります。 data-*
を使用すると、これらの属性がアプリケーション固有のデータとして扱われ、潜在的な競合を回避できます。本質的に、HTML5データ属性は、HTML構造内に少量のアプリケーション固有のデータを直接保存し、HTMLとJavaScriptの間のギャップを埋めるための軽量でアクセス可能な、意味的に適切なメカニズムを提供します。
以上がHTML5カスタムデータ属性(data-*)を使用して、要素にカスタムデータを保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。