suchen
HeimWeb-Frontendjs-TutorialWie Sie HTML5 -benutzerdefinierte Datenattribute verwenden können und warum

How You Can Use HTML5 Custom Data Attributes and Why

HTML5 -Datenattribute können Entwicklern benutzerdefinierte Daten in HTML -Elementen speichern. Sie bieten eine Möglichkeit, HTML -Elementen zusätzliche Informationen hinzuzufügen, die von JavaScript oder CSS verwendet werden können, wodurch die Webseitenfunktionalität verbessert werden kann. In diesem Artikel wird erläutert, welche Datenattribute sind und wofür sie sind.

Schlüsselpunkte

  • HTML5 -Datenattribute können Entwicklern zusätzliche Informationen zu HTML -Elementen speichern, auf die von JavaScript oder CSS zugegriffen und verwendet werden kann, wodurch die Funktionen von Webseiten verbessert werden können.
  • Datenattribute beginnen immer mit "data-", können verwendet werden, um Elemente in CSS über den Attribut-Selektor zu stylen und den Benutzer Informationen über die attr() -Funktion anzuzeigen.
  • In JavaScript können auf Dateneigenschaften mithilfe getAttribute() und setAttribute() Methoden, dataset -attribute oder JQuery -Methoden zugegriffen werden. data()
  • Während benutzerdefinierte Datenattribute leistungsfähig sind, sollten sie nur verwendet werden, wenn es keine anderen geeigneten HTML -Elemente oder -attribute gibt und nicht zum Speichern großer Datenmengen verwendet werden sollte.

Warum verwenden Sie benutzerdefinierte Dateneigenschaften?

Wir müssen häufig Informationen speichern, die mit verschiedenen DOM -Elementen verbunden sind. Diese Informationen sind für die Leser möglicherweise nicht wichtig, aber es wird unsere Entwicklungsbemühungen erheblich erleichtern. Angenommen, Sie listen verschiedene Restaurants auf einer Webseite auf. Wenn Sie vor HTML5 Informationen wie die Art der Lebensmittel speichern möchten, die von einem Restaurant bereitgestellt wird oder wie weit sie von den Besuchern sind, verwenden Sie das

-Merkmal von HTML. Was ist, wenn Sie auch Ihre Restaurant -ID aufbewahren müssen, um das spezifische Restaurant anzusehen, das der Benutzer besuchen möchte? Hier sind einige Fragen zu den Methoden basierend auf HTML class Attribut: class

    html
  • Eigenschaften werden nicht verwendet, um solche Daten zu speichern. Der Hauptzweck ist es, Entwicklern einer Reihe von Elementen Stilinformationen zuzuweisen. class
  • Jedes Mal, wenn eine Nachricht hinzugefügt wird, muss eine neue Klasse dem Element hinzufügen. Dies macht die Parsen von Daten in JavaScript, um die erforderlichen Informationen noch schwieriger zu machen.
  • Angenommen, der angegebene Klassenname beginnt mit einer Nummer. Wenn Sie sich entscheiden, das Element später basierend auf den Daten im Klassennamen zu stylen, müssen Sie den Zahlen entkommen oder den Attributauswahl im Stylesheet verwenden.
Um diese Probleme zu lösen, führt HTML5 benutzerdefinierte Dateneigenschaften ein. Alle Elementattribute, deren Namen mit

beginnen, sind Datenattribute. Sie können diese Datenattribute auch für Stilelemente verwenden. Geben Sie als nächstes die Grundlagen der Dateneigenschaften ein und lernen Sie, wie Sie auf ihre Werte in CSS und JavaScript zugreifen können. data-

html syntax

Wie bereits erwähnt, beginnt der Name des Datenattributs immer mit

. Hier ist ein Beispiel: data-

<li data-type="veg" data-distance="2miles" data-identifier="10318">Salad King</li>

Sie können diese Datenattribute jetzt verwenden, um die Restaurants der Besucher zu durchsuchen und zu sortieren. Zum Beispiel können Sie ihnen jetzt alle vegetarischen Restaurants in einer bestimmten Entfernung zeigen. Zusätzlich zum data- Präfix können die Namen gültiger benutzerdefinierter Datenattribute nur Buchstaben, Zahlen, Bindestriche (-), Punkte (.), Colons (:) oder unterstrichen (_) enthalten. Es kann keine Großbuchstaben enthalten. Bei Verwendung von Dateneigenschaften müssen Sie auf zwei Dinge achten. Zunächst sollten die in diesen Eigenschaften gespeicherten Daten vom Typ String sein. Jeder Inhalt, der in Strings codiert werden kann, kann auch in Dateneigenschaften gespeichert werden. Alle Typkonvertierungen müssen in JavaScript durchgeführt werden. Zweitens sollten Datenattribute nur verwendet werden, wenn keine anderen geeigneten HTML -Elemente oder -attribute vorhanden sind. Zum Beispiel ist es unangemessen, die Klasse eines Elements im Attribut data-class zu speichern. Ein Element kann eine beliebige Anzahl von Datenattributen sowie jeden gewünschten Wert haben.

Datenattribute und CSS

Sie können den Attribut -Selektor verwenden, um Elemente in CSS unter Verwendung von Datenattributen zu stylen. Sie können auch die Funktion attr() verwenden, um Informationen anzuzeigen, die in Dateneigenschaften dem Benutzer gespeichert sind (auf Tooltips oder andere Arten).

Setzen Sie den Elementstil

Zurück zu unserem Beispiel für Restaurants können Sie den Hintergrund des Restaurants auf unterschiedliche Weise mit dem Immobilienauswahl einstellen und den Benutzer für die Art des Restaurants oder deren Entfernung vom Benutzer auffordern. Hier ist ein Beispiel:

li[data-type='veg'] {
  background: #8BC34A;
}

li[data-type='french'] {
  background: #3F51B5;
}

Erstellen Sie Tooltips

Sie können Tooltips verwenden, um zusätzliche Informationen zu Elementen für den Benutzer anzuzeigen. Ich empfehle Ihnen, diese Methode zum schnellen Prototyping zu verwenden, anstatt Websites zu produzieren, da zumindest die CSS-Tooltips nicht vollständig zugänglich sind. Die Informationen, die Sie anzeigen möchten, können im Attribut data-tooltip gespeichert werden.

<span data-tooltip="简单的解释">Word</span>

Sie können dann die ::before pseudoelement verwenden, um die Daten dem Benutzer vorzustellen.

span::before {
  content: attr(data-tooltip);
  //更多样式规则
}

span:hover::before {
  display: inline-block;
}

Verwenden Sie JavaScript, um auf Datenattribute zuzugreifen

Es gibt drei Möglichkeiten, in JavaScript auf Dateneigenschaften zuzugreifen.

verwenden getAttribute und setAttribute

Sie können in JavaScript getAttribute() und setAttribute() verwenden, um die Werte verschiedener Datenattribute zu erhalten und festzulegen. Wenn die angegebene Eigenschaft nicht vorhanden ist, gibt die getAttribute -Methode null oder eine leere Zeichenfolge zurück. Hier ist ein Beispiel dafür, wie diese Methoden verwendet werden:

let restaurant = document.getElementById("restaurantId");
let ratings = restaurant.getAttribute("data-ratings");

Sie können die Methode setAttribute verwenden, um den Wert einer vorhandenen Eigenschaft zu ändern oder eine neue Eigenschaft hinzuzufügen.

restaurant.setAttribute("data-owner-name", "someName");

verwenden dataset Eigenschaften

Ein einfacherer Weg, um auf Dateneigenschaften zuzugreifen, besteht darin, dataset Eigenschaften zu verwenden. Diese Eigenschaft gibt ein DOMStringMap -Objekt zurück, das einen Eintrag für jede benutzerdefinierte Dateneigenschaft enthält. Es gibt einige Dinge, die Sie bei der Verwendung des dataset -attributs bewusst sein müssen. Es werden drei Schritte durchgeführt, um das benutzerdefinierte Datenattribut in die Taste DOMStringMap zu konvertieren:

  • Entfernen Sie das Präfix data- aus dem Attributnamen
  • Entfernen Sie alle Bindestriche, gefolgt von Kleinbuchstaben aus dem Namen und konvertieren Sie die folgenden Buchstaben in Großbuchstaben
  • Andere Zeichen bleiben gleich. Dies bedeutet, dass auch jeder Bindestrich, der von Kleinbuchstabenbuchstaben verfolgt wird, gleich bleiben.

element.dataset.keyname Die Eigenschaften können dann mit dem im Objekt als Schlüssel gespeicherten Kamelnamen wie element.dataset[keyname] zugegriffen werden. Eine andere Möglichkeit, auf Eigenschaften zuzugreifen, besteht darin, eine quadratische Halterungsnotation wie

zu verwenden. Betrachten Sie den folgenden HTML:
<li data-type="veg" data-distance="2miles" data-identifier="10318">Salad King</li>

Folgende Beispiele:
li[data-type='veg'] {
  background: #8BC34A;
}

li[data-type='french'] {
  background: #3F51B5;
}

Diese Methode wird jetzt in allen wichtigen Browsern unterstützt und Sie sollten sie zuerst verwenden, um auf benutzerdefinierte Dateneigenschaften zuzugreifen.

Verwenden Sie JQuery

data() Sie können auch die Dateneigenschaften eines Elements mit der

-Methode des Jquery zugreifen. Vor JQuery Version 1.6 müssen Sie mit dem folgenden Code auf die Dateneigenschaften zugreifen:
<span data-tooltip="简单的解释">Word</span>

Ab Version 1.6 beginnt JQuery mit der Verwendung von Kamelversionen von Dateneigenschaften. Jetzt können Sie dasselbe mit dem folgenden Code tun:
span::before {
  content: attr(data-tooltip);
  //更多样式规则
}

span:hover::before {
  display: inline-block;
}

null Sie sollten wissen, dass JQuery auch versuchen wird, die von Dateneigenschaften erhaltenen Zeichenfolgen in geeignete Typen wie Zahlen, Booleans, Objekte, Arrays und

zu konvertieren.
let restaurant = document.getElementById("restaurantId");
let ratings = restaurant.getAttribute("data-ratings");

attr() Wenn Sie möchten, dass JQuery den Wert des Datenattributs als Zeichenfolge erhalten, ohne zu versuchen, ihn in einen anderen Typ zu konvertieren, sollten Sie die

-Methode von JQuery verwenden. JQuery ruft seinen Wert nur dann ab, wenn auf das Datenattribut zum ersten Mal zugegriffen wird. Dann greifen Sie nicht mehr auf die Dateneigenschaften zu oder ändern Sie nicht mehr. Alle Änderungen, die Sie an diesen Eigenschaften vornehmen, werden intern vorgenommen und sind nur in JQuery zugänglich. Angenommen, Sie arbeiten mit den Datenattributen des folgenden Listenelements:
restaurant.setAttribute("data-owner-name", "someName");

data-distance Sie können den Wert seines

-Triputs mit dem folgenden Code ändern:
<li data-type="veg" data-distance="2miles" data-identifier="10318" data-owner-name="someName">Salad King</li>

data-distance Wie Sie sehen können, liefert der Zugriff auf den Wert des

-attributs mit dem nativen JavaScript (Nicht-JQuery) immer noch die alten Ergebnisse.

Schlussfolgerung

In diesem Tutorial habe ich alle wichtigen Dinge über HTML5 -Dateneigenschaften behandelt. Zusätzlich zum Erstellen von Tooltips und Styleing -Elementen mithilfe des Attributauswahls können Sie auch Dateneigenschaften verwenden, um Benutzer zu speichern und an Benutzer anzuzeigen, z. B. Benachrichtigungen über ungelesene Nachrichten und mehr.

(Der FAQ -Abschnitt sollte hier hinzugefügt werden, der Inhalt stimmt mit dem FAQ -Teil im Eingabetxt überein, aber der Sprachausdruck kann verfeinert werden. Um eine Duplikation zu vermeiden, lasse ich diesen Teil weg.)

Das obige ist der detaillierte Inhalt vonWie Sie HTML5 -benutzerdefinierte Datenattribute verwenden können und warum. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Python vs. JavaScript: Welche Sprache sollten Sie lernen?Python vs. JavaScript: Welche Sprache sollten Sie lernen?May 03, 2025 am 12:10 AM

Die Auswahl von Python oder JavaScript sollte auf Karriereentwicklung, Lernkurve und Ökosystem beruhen: 1) Karriereentwicklung: Python ist für die Entwicklung von Datenwissenschaften und Back-End-Entwicklung geeignet, während JavaScript für die Entwicklung von Front-End- und Full-Stack-Entwicklung geeignet ist. 2) Lernkurve: Die Python -Syntax ist prägnant und für Anfänger geeignet; Die JavaScript -Syntax ist flexibel. 3) Ökosystem: Python hat reichhaltige wissenschaftliche Computerbibliotheken und JavaScript hat ein leistungsstarkes Front-End-Framework.

JavaScript -Frameworks: Stromversorgung moderner WebentwicklungJavaScript -Frameworks: Stromversorgung moderner WebentwicklungMay 02, 2025 am 12:04 AM

Die Kraft des JavaScript -Frameworks liegt in der Vereinfachung der Entwicklung, der Verbesserung der Benutzererfahrung und der Anwendungsleistung. Betrachten Sie bei der Auswahl eines Frameworks: 1. Projektgröße und Komplexität, 2. Teamerfahrung, 3. Ökosystem und Community -Unterstützung.

Die Beziehung zwischen JavaScript, C und BrowsernDie Beziehung zwischen JavaScript, C und BrowsernMay 01, 2025 am 12:06 AM

Einführung Ich weiß, dass Sie es vielleicht seltsam finden. Was genau muss JavaScript, C und Browser tun? Sie scheinen nicht miteinander verbunden zu sein, aber tatsächlich spielen sie eine sehr wichtige Rolle in der modernen Webentwicklung. Heute werden wir die enge Verbindung zwischen diesen drei diskutieren. In diesem Artikel erfahren Sie, wie JavaScript im Browser ausgeführt wird, die Rolle von C in der Browser -Engine und wie sie zusammenarbeiten, um das Rendern und die Interaktion von Webseiten voranzutreiben. Wir alle kennen die Beziehung zwischen JavaScript und Browser. JavaScript ist die Kernsprache der Front-End-Entwicklung. Es läuft direkt im Browser und macht Webseiten lebhaft und interessant. Haben Sie sich jemals gefragt, warum Javascr

Node.js Streams mit TypeScriptNode.js Streams mit TypeScriptApr 30, 2025 am 08:22 AM

Node.js zeichnet sich bei effizienten E/A aus, vor allem bei Streams. Streams verarbeiten Daten inkrementell und vermeiden Speicherüberladung-ideal für große Dateien, Netzwerkaufgaben und Echtzeitanwendungen. Die Kombination von Streams mit der TypeScript -Sicherheit erzeugt eine POWE

Python vs. JavaScript: Leistung und EffizienzüberlegungenPython vs. JavaScript: Leistung und EffizienzüberlegungenApr 30, 2025 am 12:08 AM

Die Unterschiede in der Leistung und der Effizienz zwischen Python und JavaScript spiegeln sich hauptsächlich in: 1 wider: 1) Als interpretierter Sprache läuft Python langsam, weist jedoch eine hohe Entwicklungseffizienz auf und ist für eine schnelle Prototypentwicklung geeignet. 2) JavaScript ist auf einen einzelnen Thread im Browser beschränkt, aber Multi-Threading- und Asynchronen-E/A können verwendet werden, um die Leistung in Node.js zu verbessern, und beide haben Vorteile in tatsächlichen Projekten.

Die Ursprünge von JavaScript: Erforschung seiner ImplementierungsspracheDie Ursprünge von JavaScript: Erforschung seiner ImplementierungsspracheApr 29, 2025 am 12:51 AM

JavaScript stammt aus dem Jahr 1995 und wurde von Brandon Ike erstellt und realisierte die Sprache in C. 1.C-Sprache bietet Programmierfunktionen auf hoher Leistung und Systemebene für JavaScript. 2. Die Speicherverwaltung und die Leistungsoptimierung von JavaScript basieren auf C -Sprache. 3. Die plattformübergreifende Funktion der C-Sprache hilft JavaScript, auf verschiedenen Betriebssystemen effizient zu laufen.

Hinter den Kulissen: Welche Sprache macht JavaScript?Hinter den Kulissen: Welche Sprache macht JavaScript?Apr 28, 2025 am 12:01 AM

JavaScript wird in Browsern und Node.js -Umgebungen ausgeführt und stützt sich auf die JavaScript -Engine, um Code zu analysieren und auszuführen. 1) abstrakter Syntaxbaum (AST) in der Parsenstufe erzeugen; 2) AST in die Kompilierungsphase in Bytecode oder Maschinencode umwandeln; 3) Führen Sie den kompilierten Code in der Ausführungsstufe aus.

Die Zukunft von Python und JavaScript: Trends und VorhersagenDie Zukunft von Python und JavaScript: Trends und VorhersagenApr 27, 2025 am 12:21 AM

Zu den zukünftigen Trends von Python und JavaScript gehören: 1. Python wird seine Position in den Bereichen wissenschaftlicher Computer und KI konsolidieren. JavaScript wird die Entwicklung der Web-Technologie fördern. Beide werden die Anwendungsszenarien in ihren jeweiligen Bereichen weiter erweitern und mehr Durchbrüche in der Leistung erzielen.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

MinGW – Minimalistisches GNU für Windows

MinGW – Minimalistisches GNU für Windows

Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

mPDF

mPDF

mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor