Creación de un mbox con at.js 2.x

Intente cerrar el <div> antes del script.

Descripción description

Entorno
Adobe Target

Problema
El mboxCreate El método no funciona con at.js 2.x. ¿Cómo se crea un div de mbox en el nivel de página?

Este código siguiente no tuvo éxito:

<div class="mboxDefault">

adobe.target.getOffer({

"mbox": "customTestMbox",

"params": {

"status": "true"

},

"success": function(offer) {

adobe.target.applyOffer( {

"mbox": "customTestMbox",

"offer": offer

} );

},

"error": function(status, error) {

console.log('Error', status, error);

}

});

</div>

Compare esto con el código de la Solución más abajo.

Resolución resolution

Solución
Intente cerrar el <div> antes del script.

Por ejemplo:

<div class="mboxDefault">
  default content to replace by offer
</div>
<script>
  var el = document.currentScript.previousElementSibling;
  adobe.target.getOffer({
    mbox: "mboxName",
    params: {
      param1: "value1",
      param2: "value2"
    },
    success: function(offer) {
      adobe.target.applyOffer({
        mbox: "mboxName",
        selector: el,
        offer: offer
      });
    },
    error: function(error) {
      console.error(error);
      el.style.visibility = "visible";
    }
  });
</script>
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f