2013-07-17 13 views
7

Zazwyczaj używam data-*** do przechowywania niektórych danych.Jaki jest prawidłowy sposób przechowywania niektórych danych w `<a>` znaczniku zakotwiczenia?

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

mogę dostać go w jQuery przy użyciu

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

to działa dobrze. ale chcę wiedzieć, czy jest to właściwy sposób i czy są jakieś problemy ze zgodnością?

czy też muszę użyć rel tj:

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

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

zaktualizowałem skrzypce http://jsfiddle.net/suhailvs/XYZQK/

+0

Jakie dane są potrzebne do przechowywania? Nadużywanie "rel" nigdy nie jest właściwym rozwiązaniem. – Blender

+0

Chcę przechowywać wiele html. dzięki czemu mogę go używać w modelu bootstrap. – suhailvs

+0

Atrybuty nie są naprawdę dobrym miejscem na HTML. – Blender

Odpowiedz

1

Jeśli chcesz dane do składowane tymczasowo (czyli tylko na czas trwania strony), a następnie za pomocą Identyfikator api .data() jest prawidłową metodą:

+0

+1 dla '.data()' – suhailvs

3

Atrybut rel podczas odsyłającego do tagu a służy wyszukiwarkom do określenia relacji między dokumentacją nt i ten, z którym się łączy.

Atrybut ten może być używany przez programistów do tworzenia atrybutów niestandardowych podczas przechowywania danych w nim.

Powiedzenie: data-*** jest prawidłowym sposobem przechowywania niektórych danych.

MDN HTML attribute reference

NIE UŻYWAJ REL dla niestandardowych PRZECHOWYWANIE DANYCH

KOMPATYBILNOŚĆ OBAWY

Od data i rel (referrering do a tag) atrybuty są przypuszczać, aby być ignorowane przez przeglądarki, możesz użyć obu, albo/albo. Chociaż najlepiej jest używać znacznika data do przechowywania "danych".


RICH WYNIKI

jeśli chcesz wyszukiwarki do recongize niektóre linki lub elementy jak dane opisujące treść, jak opis strony, datę, obraz strony publikują, więc i więc możesz przeczytać "wyniki wyszukiwania rozszerzonego" i "opisy rozszerzone" z Google.

te łącza zaczną cię Rich search results lub About rich snippets and structured data

+0

thaks dla dobre wyjaśnienia (+1) – suhailvs

1

Oto artykuł o tym, dlaczego nie powinno się używać rel, a co można spróbować, jeśli nie jesteś pewien temat korzystania teleinformatyczny.

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

Bootstrap już znaczący sposób korzysta z teleinformatyczny, nie ma powodu, aby wziąć go jeszcze bardziej.

+0

czy jest jakiś problem ze zgodnością w 'danych - ***' mam na myśli przeglądarkę lub os – suhailvs

1

pan nadużywa data- atrybuty, więc dla przypadku użycia, żaden z nich nie są poprawne (rel nigdy nie jest).

Chciałbym zmienić strukturę HTML, aby uwzględnić dodatkowe informacje (tj. Użyć innych znaczników) lub po prostu przechowywać zawartość w obiekcie JavaScript, aby rozpocząć. Wbijanie go w pojedynczy znacznik zakotwiczenia nie jest dobrym pomysłem.

+0

@suhail: Model lub modal? Jeśli jest to dialog modalny, po prostu utwórz ogólny program obsługi zdarzeń, który zajmuje się wszystkimi linkami. – Blender

+0

hej masz rację. Teraz dostaję błędy. nie otrzymuję pełnego tekstu .. żadnych sugestii ???? – suhailvs

Powiązane problemy