12/03/2022
Tilføj ikoner i jQuery Mobile: En komplet guide
jQuery Mobile er et populært framework til at bygge responsive webapplikationer til mobile enheder. En af de mange funktioner, der bidrager til en god brugeroplevelse, er muligheden for at tilføje ikoner til brugergrænsefladen. Ikoner kan hurtigt formidle information og gøre navigationen mere intuitiv. Denne guide vil dykke ned i, hvordan du effektivt implementerer ikoner i dine jQuery Mobile-projekter ved hjælp af de indbyggede funktioner og data-attributter.

Grundlæggende ikonimplementering
Den mest almindelige måde at tilføje ikoner på i jQuery Mobile er ved at bruge specifikke CSS-klasser til dine - og -elementer. jQuery Mobile leverer et rigt bibliotek af indbyggede ikoner, som du kan udnytte. For at tilføje et ikon til et link eller en knap, skal du blot tilføje klassen ui-icon efterfulgt af navnet på det ønskede ikon. Du kan også styre ikonets placering ved hjælp af ui-iconpos klassen.
Tilføjelse af ikoner til links og knapper
For <a> og <button> elementer bruger du icon klassen og positionerer ikonet som vist herunder. Bemærk, at knapper i navigationslinjer har en særlig håndtering, som vi vil se på senere.
Eksempel:
<a href="#" class="ui-btn ui-icon-home ui-btn-icon-left">Hjem</a> <button class="ui-btn ui-icon-gear ui-btn-icon-right">Indstillinger</button> I dette eksempel tilføjer ui-icon-home et hjemme-ikon til linket, og ui-btn-icon-left placerer ikonet til venstre for teksten. Tilsvarende for knappen med ui-icon-gear og ui-btn-icon-right.
Ikoner til input-knapper
For <input>-knapper bruges data-icon attributten til at specificere ikonet.
Eksempel:
<input type="button" value="Søg" data-icon="search"> Her vil et søge-ikon blive vist på input-knappen.
Knapper i navigationslinjer (navbar) bruger også data-icon attributten.
Eksempel:
<div data-role="navbar"> <ul> <li><a href="#" data-icon="home">Start</a></li> <li><a href="#" data-icon="star">Favoritter</a></li> <li><a href="#" data-icon="gear">Indstillinger</a></li> </ul> </div> Ikoner i listeelementer
For at tilføje ikoner til listeelementer i en <ul> med data-role="listview", bruger du data-icon attributten på <li>-elementet.
Eksempel:
<ul data-role="listview"> <li data-icon="phone"><a href="#">Kontakt os</a></li> <li data-icon="mail"><a href="#">Send en mail</a></li> </ul> Bemærk:data-icon attributten på listeelementer er kun relevant, hvis listeelementet indeholder et link.
jQuery Mobiles data-attributter
jQuery Mobile udnytter i høj grad HTML5 data- attributter til at muliggøre markup-baseret initialisering og konfiguration af widgets. Disse attributter er valgfrie; du kan også kalde plugins manuelt og sende indstillinger direkte. For at undgå navnekonflikter med andre plugins eller frameworks, der også bruger data- attributter, kan du sætte et brugerdefineret namespace ved at ændre den globale ns option.
Generelle data-attributter for knapper og links
Følgende attributter gælder for mange elementer, især links og knapper, der enten har data-role="button" eller automatisk forbedres:
| Attribut | Mulige værdier | Beskrivelse |
|---|---|---|
data-corners | true | false | Styrer om elementet skal have afrundede hjørner. |
data-icon | home | delete | plus | arrow-u | arrow-d | carat-l | carat-t | carat-r | carat-b | check | gear | grid | star | custom | arrow-r | arrow-l | minus | refresh | forward | back | alert | info | search | false | Angiver det ikon, der skal vises. |
data-iconpos | left | right | top | bottom | notext | Angiver placeringen af ikonet i forhold til teksten. notext skjuler teksten og viser kun ikonet. |
data-iconshadow | true | false | Tilføjer en skyggeeffekt til ikonet. (Deprecated som af 1.4.0) |
data-inline | true | false | Gør knappen eller linket inline. |
data-mini | true | false | Anvender en kompakt størrelse på elementet. |
data-shadow | true | false | Styrer om elementet skal have en skyggeeffekt. |
data-theme | swatch letter (a-z) | Anvender et specifikt tema (farveskema) på elementet. |
Specifikke data-attributter for forskellige widgets
jQuery Mobile tilbyder mange andre widgets, som også kan konfigureres med data- attributter, herunder:
- Collapsible og Collapsible Set: Bruges til at styre ikoner for sammenklappelige sektioner (
data-collapsed-icon,data-expanded-icon). - Listview: Udover
data-iconpå listeelementer, kan du også styre ikoner for hele listevisninger (data-iconfor dividers,data-split-iconfor split-knapper). - Navbar:
data-iconposkan bruges til at styre ikonplaceringen i en navigationslinje. - Dialoger:
data-close-btnkan bruge ikoner til lukkeknappen. - Popups: Kan også have ikoner og styre deres placering og overgang.
Tilgængelige ikoner i jQuery Mobile
jQuery Mobile leverer et bredt udvalg af standardikoner, som kan bruges med data-icon eller ui-icon- klasserne. Her er en liste over nogle af de mest almindelige:
| Ikonnavn | Visuel repræsentation (beskrivelse) |
|---|---|
home | Hus |
delete | Skraldespand |
plus | Plus-symbol |
arrow-u | Pil op |
arrow-d | Pil ned |
arrow-l | Pil venstre |
arrow-r | Pil højre |
check | Flueben |
gear | Tandhjul |
star | Stjerne |
refresh | Genopfriskningssymbol |
search | Lupe |
info | Information (i) |
alert | Udråbstegn |
custom | Brugerdefineret ikon (kræver yderligere CSS) |
Du kan finde den komplette liste over tilgængelige ikoner i jQuery Mobiles officielle dokumentation.
Brugerdefinerede ikoner
Hvis de indbyggede ikoner ikke opfylder dine behov, kan du nemt definere dine egne brugerdefinerede ikoner. Dette gøres typisk ved at oprette en ny CSS-klasse, der bruger en baggrundsgrafik (f.eks. en SVG eller PNG), og derefter anvende denne klasse på dit element ved hjælp af data-icon attributten med værdien custom.
Eksempel på CSS:
.ui-icon-my-custom-icon { background-image: url("path/to/your/icon.png"); background-size: 18px 18px; /* Juster efter behov */ background-repeat: no-repeat; background-position: center center; } HTML:
<a href="#" class="ui-btn ui-icon-my-custom-icon ui-btn-icon-left">Brugerdefineret</a> Husk at justere background-size og background-position for at få ikonet til at passe korrekt ind.
FAQ - Ofte stillede spørgsmål
Hvordan ændrer jeg ikonets placering?
Du kan ændre ikonets placering ved at bruge klasserne ui-btn-icon-left, ui-btn-icon-right, ui-btn-icon-top, ui-btn-icon-bottom eller ui-btn-icon-notext.
Kan jeg fjerne ikoner?
Ja, du kan enten undlade at angive en data-icon attribut, eller sætte den til false for at deaktivere ikoner på elementer, der normalt ville vise et.
Hvad hvis jeg vil have et ikon uden tekst?
Brug data-iconpos="notext" på dit link eller din knap. Dette vil skjule teksten og kun vise ikonet.
Er data-iconshadow stadig understøttet?
data-iconshadow er deprecated fra version 1.4.0 og vil blive fjernet i fremtidige versioner. Det anbefales at bruge CSS til at styre skyggeeffekter.
Konklusion
Tilføjelse af ikoner i jQuery Mobile er en ligetil proces, der kan forbedre brugeroplevelsen markant. Ved at udnytte de indbyggede ikoner og fleksibiliteten i data- attributterne kan du skabe visuelt tiltalende og brugervenlige mobile grænseflader. Uanset om du bruger standardikoner eller dine egne brugerdefinerede designs, giver jQuery Mobile dig de værktøjer, du behøver for at tilføje et professionelt touch til din applikation.
Hvis du vil læse andre artikler, der ligner Tilføj ikoner i jQuery Mobile, kan du besøge kategorien Teknologi.
