Emulatorer
- Ämnen:
- Developing
Skapat för:
- Developer
Med Adobe Experience Manager (AEM) kan författare visa en sida i en emulator som simulerar den miljö i vilken slutanvändaren ska visa sidan, till exempel på en mobilenhet eller i en e-postklient.
AEM emulatorramverk:
- Innehållsutveckling i ett simulerat användargränssnitt, t.ex. en mobilenhet eller en e-postklient (används för att skapa nyhetsbrev).
- Anpassar sidinnehållet enligt det simulerade användargränssnittet.
- Gör att du kan skapa egna emulatorer.
Emulatoregenskaper
En emulator:
- Baseras på ExtJS.
- Fungerar på sidan DOM.
- Dess utseende regleras via CSS.
- Stöder plugin-program (t.ex. plugin-programmet för mobilenhetsrotation).
- Är bara aktivt på författare.
- Dess baskomponent är vid
/libs/wcm/emulator/components/base
.
Hur emulatorn omformar innehållet
Emulatorn fungerar genom att kapsla in HTML innehåll i emulatorns DIV. Följande HTML-kod:
<body>
<div id="wrapper" class="page mobilecontentpage ">
<div class="topnav mobiletopnav">
...
</div>
...
</div>
</body>
omvandlas till följande html-kod efter emulatorns start:
<body>
<div id="cq-emulator-toolbar">
...
</div>
<div id="cq-emulator-wrapper">
<div id="cq-emulator-device">
<div class=" android vertical" id="cq-emulator">
...
<div class=" android vertical" id="cq-emulator-content">
...
<div id="wrapper" class="page mobilecontentpage">
...
</div>
...
</div>
</div>
</div>
</div>
...
</body>
Två div-taggar har lagts till:
-
div med id
cq-emulator
som innehåller emulatorn som helhet och -
div med id
cq-emulator-content
som representerar enhetens visningsruta/skärm/innehållsområde där sidinnehållet finns.
Nya CSS-klasser tilldelas också till de nya emulatordiven: de representerar namnet på den aktuella emulatorn.
Plugin-program för en emulator kan utöka listan med tilldelade CSS-klasser ytterligare, som i exemplet med plugin-programmet för rotation, genom att infoga en"vertikal" eller"horisontell" klass beroende på den aktuella enhetsrotationen.
På så sätt kan emulatorns fullständiga utseende styras genom att CSS-klasserna motsvarar emulatorns ID:n och CSS-klasser.
Mobila emulatorer
Befintliga mobilemulatorer:
-
Finns under /libs/wcm/mobile/components/emulators.
-
Finns via JSON-servleten på:
http://localhost:4502/bin/wcm/mobile/emulators.json
När sidkomponenten är beroende av den mobila sidkomponenten ( /libs/wcm/mobile/components/page
) integreras emulatorfunktionen automatiskt på sidan med följande mekanism:
-
Komponenten för mobilsidan
head.jsp
innehåller enhetsgruppens associerade init-komponent för emulering (endast i författarläge) och enhetsgruppens återgivnings-CSS via:deviceGroup.drawHead(pageContext);
-
Metoden
DeviceGroup.drawHead(pageContext)
innehåller emulatorns init-komponent, d.v.s. anroparinit.html.jsp
för emulatorkomponenten. Om emulatorkomponenten inte har en egeninit.html.jsp
och förlitar sig på emulatorn för mobilbasen (wcm/mobile/components/emulators/base)
anropas initieringsskriptet för mobilbasemulatorn (/libs/wcm/mobile/components/emulators/base/init.html.jsp
). -
Initieringsskriptet för mobilbasemulatorn definierar via Javascript:
-
Konfigurationen för alla emulatorer som är definierade för sidan (emulatorConfigs)
-
Emulatorhanteraren som integrerar emulatorns funktioner på sidan genom:
emulatorMgr.launch(config)
;Emulatorhanteraren definieras av:
/libs/wcm/emulator/widgets/source/EmulatorManager.js
-
Skapa en anpassad mobilemulator
Så här skapar du en anpassad mobilemulator:
-
Nedanför
/apps/myapp/components/emulators
skapa komponentenmyemulator
(nodtyp:cq:Component
). -
Ange
sling:resourceSuperType
egenskap till/libs/wcm/mobile/components/emulators/base
-
Definiera ett CSS-klientbibliotek med kategori
cq.wcm.mobile.emulator
för emulatorns utseende: name =css
, nodtyp =cq:ClientLibrary
Du kan till exempel referera till noden
/libs/wcm/mobile/components/emulators/iPhone/css
-
Definiera vid behov ett JS-klientbibliotek, t.ex. för att definiera ett specifikt plugin-program: name = js, nodtyp = cq:ClientLibrary
Du kan till exempel referera till noden
/libs/wcm/mobile/components/emulators/base/js
-
Om emulatorn har stöd för vissa funktioner som definieras av plugin-program (som pekrullning) skapar du en konfigurationsnod under emulatorn: name =
cq:emulatorConfig
, nodtyp =nt:unstructured
och lägg till egenskapen som definierar plugin-programmet:-
Namn =
canRotate
, typ =Boolean
, värde =true
: för att inkludera rotationsfunktionen. -
Namn =
touchScrolling
, typ =Boolean
, värde =true
: för att inkludera pekskärmsfunktionen.
Du kan lägga till fler funktioner genom att definiera egna plugin-program.
-
Experience Manager
- Utveckla användarhandboken - översikt
- Introduktion för utvecklare
- Komma igång med utveckling i AEM Sites – WKND-självstudiekurs
- AEM kärnbegrepp
- Struktur för det AEM användargränssnittet med pekskärm
- Koncepten i det AEM användargränssnittet med pekskärm
- AEM - riktlinjer och bästa praxis
- Använda bibliotek på klientsidan
- Developing and Page Diff
- Begränsningar för redigerare
- CSRF Protection Framework
- Datamodellering - David Nueschelers modell
- Bidrar till AEM
- Dokumentskydd
- Referensmaterial
- Skapa en webbplats med alla funktioner (Classic UI)
- Designer och Designer (Classic UI)
- Plattform
- Fusklapp för Sling
- Använda Sling-adaptrar
- Taggbibliotek
- Mallar
- Använda Sling Resource Merger i AEM
- Övertäckningar
- Namnkonventioner
- Skapa en ny GRE-fältkomponent
- Query Builder
- Taggar
- Anpassa sidor som visas av felhanteraren
- Anpassade nodtyper
- Lägga till teckensnitt för grafikåtergivning
- Ansluta till SQL-databaser
- Extern URL
- Skapa och använda jobb för avlastning
- Konfigurerar cookie-användning
- Så här programmässigt kommer du åt AEM JCR
- Integrera tjänster med JMX-konsolen
- Developing the Bulk Editor
- Utveckla rapporter
- eCommerce
- Komponenter
- Kärnkomponenter
- Formatsystem
- Komponenter - översikt
- AEM - Grunderna
- Utveckla AEM
- Utveckla AEM - kodexempel
- JSON-exporterare för innehållstjänster
- Aktivera JSON-export för en komponent
- Bildredigeraren
- Dekoration-tagg
- Använda Dölj villkor
- Konfigurera flera redigerare på plats
- Utvecklarläge
- Testa användargränssnittet
- Komponenter för innehållsfragment
- Hämta sidinformation i JSON-format
- Internationalisering
- Klassiska gränssnittskomponenter
- Headless Experience Management
- Headless och Hybrid with AEM
- Aktivera JSON-export för en komponent
- Enkelsidiga program
- SPA introduktion och genomgång
- SPA WKND - självstudiekurs
- Getting Started with SPA in AEM - React
- Komma igång med SPA i AEM - Angular
- Implementera en React Component for SPA
- SPA djupdykning
- SPA
- Utveckla SPA för AEM
- SPA Blueprint
- SPA
- Dynamisk mappning av modell till komponent för SPA
- SPA
- SPA och Adobe Experience Platform Launch Integration
- SPA- och serveråtergivning
- SPA referensmaterial
- HTTP-API
- Innehållsfragment
- Experience Fragments
- Utvecklingsverktyg
- Utvecklingsverktyg
- AEM Modernization Tools
- Dialogruteredigeraren
- Verktyget Dialogkonvertering
- Utveckla med CRXDE Lite
- Hantera paket med Maven
- Utveckla AEM projekt med Eclipse
- Skapa AEM projekt med Apache Maven
- Utveckla AEM projekt med IntelliJ IDEA
- Så här använder du VLT-verktyget
- Så här använder du proxyserververktyget
- AEM Brackets Extension
- AEM Developer Tools for Eclipse
- AEM
- Personanpassning
- Utöka AEM
- Anpassa sidredigering
- Anpassa konsolerna
- Anpassa vyer av Sidegenskaper
- Konfigurera din sida för gruppredigering av sidegenskaper
- Anpassa och utöka Content Fragments
- Utöka arbetsflöden
- Utöka Multi Site Manager
- Spårning och analys
- Cloud Services
- Skapa anpassade tillägg
- Forms
- Integrera tjänster med JMX-konsolen
- Developing the Bulk Editor
- Utöka Classic UI
- Testning
- Bästa praxis
- Mobil webb