Guida allo sviluppo di creatività espandibili HTML5

Controllo dell'espansione della creatività

Per espandere la creatività, sviluppa un oggetto che controlla l'espansione su interazione dell'utente. Puoi impostare la creatività in modo che si espanda al clic o al mouseover da parte dell'utente. L'esempio riportato in questo articolo illustra come impostare l'espansione al clic in un punto qualsiasi del riquadro compresso.

Creazione di un pulsante

Crea un tag <div> nel file HTML e assegna un ID (ad esempio, "pulsante-espansione").

Esempio di codice

Aggiungi un nuovo tag div con l'ID "pulsante-espansione".

<body>
 <div id="main-panel">
   <div id="collapsed-panel">
     <!-- Add collapsed content here. -->
     <div id="expand-button"></div>
   </div>
   <div id="expanded-panel">
     <!-- Add expanded content here. -->
   </div>
 </div>
</body>

Definizione del pulsante

Definisci l'oggetto creato con il linguaggio CSS utilizzando l'ID corrispondente ("pulsante-espansione").

Esempio di codice

Utilizzando il linguaggio CSS, fai corrispondere le dimensioni dell'oggetto a quelle del riquadro compresso e impostalo su invisibile.

#expand-button {
  position: absolute;
  width: inherit;
  height: inherit;
  opacity: 0;
  cursor: pointer;
.

Aggiunta del codice di espansione

L'espansione di un annuncio è un processo asincrono che segue questo esatto ordine:

  1. La creatività richiede l'espansione utilizzando il metodo requestExpand.
  2. Tale richiesta invia l'evento EXPAND_START, che consente alla creatività di richiedere l'animazione di espansione (se presente).
  3. La creatività richiede il completamento dell'espansione utilizzando il metodo finishExpand.
  4. Tale richiesta invia l'evento EXPAND_FINISH, che consente alla creatività di richiedere eventuali animazioni o funzionalità aggiuntive nel riquadro espanso.
Esempio di codice
<head>
<script type="text/javascript">
var isExpanded = false;

function expandStartHandler() {
  // Perform expand animation.
  // Optionally, should you want the direction to expand in call:
  // Enabler.getExpandDirection(); //
  // When animation finished must call
  Enabler.finishExpand();
}

function expandFinishHandler() {
  // Convenience callback for setting
  // final state when expanded.
  isExpanded = true;
}

function collapseStartHandler() {
  // Perform collapse animation.
  // When animation finished must call
  Enabler.finishCollapse();
}

function collapseFinishHandler() {
  // Convenience callback for setting
  // final state when collapsed.
  isExpanded = false;
}

function actionClickHandler() {
  isExpanded ? Enabler.requestCollapse() : Enabler.requestExpand();
}

Enabler.addEventListener(
  studio.events.StudioEvent.EXPAND_START,
  expandStartHandler);
Enabler.addEventListener(
  studio.events.StudioEvent.EXPAND_FINISH,
  expandFinishHandler);
Enabler.addEventListener(
  studio.events.StudioEvent.COLLAPSE_START,
  collapseStartHandler);
Enabler.addEventListener(
  studio.events.StudioEvent.COLLAPSE_FINISH,
  collapseFinishHandler);
actionBtn.addEventListener(
  'click',
  actionClickHandler,
  false);
</script>
...
</head>

 

Facoltativo. Espansione automatica della creatività al primo caricamento

Alcuni publishers configurano le creatività in modo che si espandano automaticamente la prima volta che l'annuncio viene caricato in una pagina. A tal fine, utilizza il metodo setStartExpanded di Enabler.

Inserisci questa riga di codice prima della funzione expandStartHandler nel codice di espansione di esempio sopra riportato. Questo metodo può essere richiamato prima dell'evento INIT di Enabler.
Enabler.setStartExpanded(true);
Se la creatività si espande automaticamente, non viengono tracciate metriche di espansione. Le espansioni avviate dall'utente, dopo quella automatica, sono invece tracciate.

È stato utile?

Come possiamo migliorare l'articolo?

Hai bisogno di ulteriore assistenza?

Prova i passaggi successivi indicati di seguito:

Ricerca
Cancella ricerca
Chiudi ricerca
Menu principale
13021551173529391746
true
Cerca nel Centro assistenza
true
true
true
true
true
74220
false
false