2013-07-17 4 views
7

私は通常、いくつかのデータを格納するためにdata-***を使用します。「<a>」アンカータグにデータを保存する正しい方法は何ですか?

<a href="#" data-address="some data">click</a> 

私はそれが正常に動作

alert($("a").data("address")); 

を使用してjqueryの中でそれを得ることができます。しかし、私はそれが正しい方法であることを知りたいし、そこに互換性の問題はありますか?

または私はrelすなわちを使用する必要がない:

<a href="#" rel="some data">click</a> 

alert($("a").attr("rel")); 

あなたが使用して、その後(すなわちページのみの期間)一時的に保存したデータが必要な場合、私はフィドルhttp://jsfiddle.net/suhailvs/XYZQK/

+0

そこに保存する必要があるデータはありますか? 'rel'を濫用することは決して正しい解決策ではありません。 – Blender

+0

私はたくさんのhtmlを保存したいと思います。私はそれをブートストラップモデルで使うことができます。 – suhailvs

+0

属性はHTMLのための本当に良い場所ではありません。 – Blender

答えて

1

を更新.data() apiが正しい方法です

+0

+1の '.data()' – suhailvs

3

rel属性をaというタグに照会すると、そのタグは検索エンジン用のドキュメントntとそれがリンクしているもの。

data属性は、開発者がカスタム属性を作成してデータを格納する際に使用できます。

と言いますと、data-***はデータを保存する正しい方法です。

MDN HTML attribute reference

datarelaタグにreferrering)属性はによって無視されると仮定されているので

互換性が

を懸念カスタム・データ・ストレージのためのRELを使用しないでください/またはどちらかを使用することができます。 dataタグを使用して 'データ'を保存することをお勧めしますが、


RICH検索結果

あなたがそう、データはページ記述のように、あなたのコンテンツを記述するなど、特定のリンクや要素をrecongize日付、ページ画像を公開するために検索エンジンたい場合やgoogleから「豊かな検索結果」と「リッチスニペット」を読みたいかもしれません。

これらのリンクはあなたを開始しますRich search resultsまたはAbout rich snippets and structured data

+0

のためのthaks良い説明(+1) – suhailvs

1

は、ここでは、RELを使用してはならない理由についての記事だし、あなたがデータ - 使用方法についてわからない場合は何を試みることができます。

http://www.sitepoint.com/rel-not-a-custom-attribute/

ブートストラップはすでに、さらにそれを取るしない理由をデータ - を多用していません。

+0

'data - ***'には互換性の問題があります。ブラウザまたはos – suhailvs

1

を-attributes。

私は、HTMLの構造を変更して余分な情報(つまり他のタグを使用する)を変更するか、またはJavaScriptオブジェクトにコンテンツを保存するだけで開始します。すべてを単一のアンカータグに詰め込むのは良い考えではありません。

+0

@suhail:モデルまたはモーダル?モーダルダイアログの場合は、すべてのリンクを処理する汎用イベントハンドラを作成します。 – Blender

+0

あなたは正しいですね。今私はエラーが発生します。私は完全なテキストを取得していない..任意の提案? – suhailvs

関連する問題