Visionneuse d’images interactive est une visionneuse qui affiche une seule image non zoomable avec des zones réactives cliquables. L’objectif de cette visionneuse est de mettre en oeuvre une expérience de "bannière Shoppable". En d’autres termes, l’utilisateur peut sélectionner une zone réactive sur l’image de bannière et être redirigé vers un aperçu rapide ou une page des détails du produit sur votre site web. Il est conçu pour fonctionner sur les ordinateurs de bureau et les appareils mobiles.
Les images qui utilisent IR (Image Rendering) ou UGC (User-Generated Content) ne sont pas prises en charge par cette visionneuse.
Le type de visionneuse est 508.
Voir Configuration requise.
La visionneuse d’images interactives représente un fichier JavaScript principal et un ensemble de fichiers d’assistance (un seul fichier JavaScript inclus avec tous les composants du SDK de la visionneuse utilisés par cette visionneuse, ressources et CSS particulière) téléchargés par la visionneuse au moment de l’exécution.
La visionneuse d’images interactives peut uniquement être utilisée en mode incorporé, où elle est intégrée dans la page web cible à l’aide de l’API documentée.
La configuration et l’habillage sont similaires à ceux des autres visionneuses décrites dans cette aide. L’habillage est effectué au moyen d’une feuille CSS personnalisée.
Voir Référence de commande commune à toutes les visionneuses - Attributs de configuration et Référence de commande commune à toutes les visionneuses - URL
L’interaction prise en charge par la visionneuse d’images vidéo est l’activation de la zone réactive sur les ordinateurs de bureau. Cette activation se produit sur les périphériques tactiles et en cliquant dessus.
La visionneuse est entièrement accessible au clavier.
Voir Accessibilité du clavier et navigation.
La visionneuse d’images interactives est incorporée dans la page d’hébergement. Une telle page web peut avoir une mise en page statique ou être "réactive" et s’afficher différemment sur différents appareils ou pour différentes tailles de fenêtre de navigateur.
Pour répondre à ces besoins, la visionneuse prend en charge deux modes de fonctionnement Principaux : incorporation de taille fixe et incorporation réactive.
À propos du mode d’incorporation à taille fixe et du mode d’incorporation de responsive design
En mode incorporé, la visionneuse est ajoutée à la page web existante. Cette page web peut déjà comporter du contenu client qui n’est pas lié à la visionneuse. Normalement, la visionneuse occupe uniquement une partie de l’espace d’une page web.
Les cas d’utilisation Principaux sont les pages web orientées vers les ordinateurs de bureau ou les tablettes, ainsi que les pages réactives qui ajustent automatiquement la mise en page en fonction du type d’appareil.
L’incorporation des tailles fixes est utilisée lorsque la visionneuse ne modifie pas sa taille après le chargement initial. Cette méthode est la meilleure solution pour les pages web avec une disposition statique.
L’incorporation de conceptions réactives suppose que la visionneuse doit être redimensionnée au moment de l’exécution en réponse au changement de taille de son conteneur. DIV
. Le cas d’utilisation le plus courant consiste à ajouter une visionneuse à une page web qui utilise une mise en page flexible.
En mode d’incorporation de responsive design, la visionneuse se comporte différemment selon la manière dont la page web dimensionne son conteneur. DIV
. Si la page web définit uniquement la largeur du conteneur DIV
, sans restriction de hauteur, la visionneuse choisit automatiquement sa hauteur en fonction des proportions de la ressource utilisée. Cette fonctionnalité permet de s’assurer que la ressource s’intègre parfaitement dans la vue sans marge intérieure sur les côtés. Ce cas d’utilisation est le plus courant pour les pages web utilisant des structures de mise en page de conception web réactive comme Bootstrap et Foundation.
Sinon, si la page web définit la largeur et la hauteur du conteneur de la visionneuse. DIV
, la visionneuse remplit exactement cette zone. Il correspond également à la taille fournie par la mise en page web. Un bon exemple consiste à incorporer la visionneuse dans une superposition modale, où la superposition est dimensionnée en fonction de la taille de la fenêtre du navigateur web.
Incorporation de taille fixe
Pour ajouter la visionneuse à une page web, procédez comme suit :
Ajout du fichier JavaScript de la visionneuse à votre page web.
Définir le conteneur DIV
.
Définition de la taille de la visionneuse.
Création et initialisation de la visionneuse.
Ajout du fichier JavaScript de la visionneuse à votre page web.
Pour créer une visionneuse, vous devez ajouter une balise de script dans l’en-tête du HTML. Avant d’utiliser l’API de visionneuse, veillez à inclure InterativeImage.js. Le InteractiveImage.js se trouve sous le fichier html5/js/ sous-dossier de votre déploiement IS-Viewers standard :
<s7viewers_root>/etc/dam/viewers/s7viewers/html5/js/InteractiveImage.js
Vous pouvez utiliser un chemin relatif si la visionneuse est déployée sur l’un des serveurs Adobe Dynamic Media Classic et qu’elle est diffusée à partir du même domaine. Dans le cas contraire, vous spécifiez un chemin d’accès complet à l’un des serveurs Adobe Dynamic Media Classic sur lesquels les visionneuses IS sont installées.
Le chemin relatif ressemble à ce qui suit :
<script language="javascript" type="text/javascript" src="/etc/dam/viewers/s7viewers/html5/js/InteractiveImage.js"></script>
Ne référencez que le code JavaScript de la visionneuse principale include
sur votre page. Ne référencez pas de fichiers JavaScript supplémentaires dans le code de page web qui pourraient être téléchargés par la logique de la visionneuse au moment de l’exécution. En particulier, ne référencez pas directement le SDK HTML5. Utils.js
bibliothèque chargée par la visionneuse depuis /s7viewers
chemin d’accès au contexte (appelé SDK consolidé) include
). La raison en est que l’emplacement de la variable Utils.js
ou des bibliothèques de visionneuses d’exécution similaires sont entièrement gérées par la logique de la visionneuse et l’emplacement change entre les versions de la visionneuse. Adobe ne conserve pas les anciennes versions de la visionneuse secondaire includes
sur le serveur.
Par conséquent, l’insertion d’une référence directe à tout JavaScript secondaire include
utilisé par la visionneuse sur la page rompt la fonctionnalité de visionneuse à l’avenir lorsqu’une nouvelle version de produit est déployée.
Définir le conteneur DIV
.
Ajouter un champ vide DIV
sur la page dans laquelle vous souhaitez que la visionneuse s’affiche. Le DIV
L’ID de l’élément doit être défini, car cet ID est transmis ultérieurement à l’API de visionneuse. La taille du DIV est spécifiée via CSS.
Espace réservé DIV
est un élément positionné, ce qui signifie que la variable position
La propriété CSS est définie sur relative
ou absolute
.
Voici un exemple d’espace réservé défini DIV
element:
<div id="s7viewer" style="position:relative"></div>
Définition de la taille de la visionneuse
Vous pouvez définir la taille statique de la visionneuse en la déclarant pour .s7interactiveimage
classe CSS de niveau supérieur en unités absolues ou en utilisant stagesize
modifier.
Vous pouvez placer le dimensionnement dans CSS directement sur la page de HTML. Vous pouvez également placer le dimensionnement dans un fichier CSS de visionneuse personnalisé, qui est ensuite affecté à un enregistrement de paramètre prédéfini de visionneuse dans Adobe Experience Manager Assets - On-demand ou transmis explicitement à l’aide de style
.
Voir Vidéo pour plus d’informations sur le style de la visionneuse avec CSS.
Voici un exemple de définition d’une taille de visionneuse statique dans la page de HTML :
#s7viewer.s7interactiveimage {
width: 1174px;
height: 500px;
}
Vous pouvez transmettre explicitement la variable stagesize
modifier avec le code d’initialisation de la visionneuse avec params
collection ou en tant qu’appel API, comme décrit dans la section Référence de commande, comme suit :
interactiveImage.setParam("stagesize", "1174,500");
Une approche basée sur CSS est recommandée et est utilisée dans cet exemple.
Création et initialisation de la visionneuse.
Une fois les étapes ci-dessus terminées, vous créez une instance de s7viewers.InteractiveImage
, transmettez toutes les informations de configuration à son constructeur, et appelez init()
sur une instance de visionneuse. Les informations de configuration sont transmises au constructeur sous la forme d’un objet JSON. Au minimum, cet objet doit avoir la valeur containerId
champ contenant le nom de l’identifiant de conteneur de la visionneuse et imbriqué params
Objet JSON avec des paramètres de configuration pris en charge par la visionneuse. Dans ce cas, la variable params
doit comporter au moins l’URL du serveur d’images transmise comme serverUrl
et la ressource initiale en tant que asset
. L’API d’initialisation basée sur JSON vous permet de créer et de démarrer la visionneuse avec une seule ligne de code.
Il est important que le conteneur de la visionneuse soit ajouté au modèle DOM afin que le code de la visionneuse puisse trouver l’élément de conteneur en fonction de son identifiant. Certains navigateurs retardent la création du DOM jusqu’à la fin de la page web. Pour une compatibilité maximale, appelez la méthode init()
juste avant la fermeture BODY
ou sur le corps onload()
.
Dans le même temps, l’élément de conteneur ne doit pas nécessairement faire partie de la mise en page web pour l’instant. Par exemple, il peut être masqué à l’aide de display:none
style qui lui est affecté. Dans ce cas, la visionneuse retarde son processus d’initialisation jusqu’au moment où la page web ramène l’élément de conteneur à la mise en page. Lorsque cet événement se produit, le chargement de la visionneuse reprend automatiquement.
Voici un exemple de création d’une instance de visionneuse, en transmettant au constructeur le minimum d’options de configuration nécessaires et en appelant la fonction init()
. L’exemple suppose que interactiveImage
est l’instance de visionneuse ; s7viewer
est le nom de l’espace réservé. DIV
; http://aodmarketingna.assetsadobe.com/is/image
est l’URL du serveur d’images, et /content/dam/mac/aodmarketingna/shoppable-banner/shoppable-banner.
est la ressource :
<script type="text/javascript">
var interactiveImage = new s7viewers.InteractiveImage ({
"containerId":"s7viewer",
"params":{
"asset":"/content/dam/mac/aodmarketingna/shoppable-banner/shoppable-banner.jpg",
"serverurl":"http://aodmarketingna.assetsadobe.com/is/image"
}
}).init();
</script>
Le code suivant est un exemple complet d’une page web triviale qui incorpore la visionneuse d’images vidéo à taille fixe :
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://aodmarketingna.assetsadobe.com/etc/dam/viewers/s7viewers/html5/js/InteractiveImage.js"></script>
<style type="text/css">
#s7viewer.s7interactiveimage {
width: 1174px;
height: 500px;
}
</style>
</head>
<body>
<div id="s7viewer" style="position:relative"></div>
<script type="text/javascript">
var interactiveImage = new s7viewers.InteractiveImage({
"containerId":"s7viewer",
"params":{
"asset":"/content/dam/mac/aodmarketingna/shoppable-banner/shoppable-banner.jpg",
"serverurl":"http://aodmarketingna.assetsadobe.com/is/image"
}
}).init();
</script>
</body>
</html>
Intégration de conception réactive avec une hauteur libre
Avec l’incorporation de responsive design, la page web dispose normalement d’une sorte de disposition flexible qui détermine la taille d’exécution du conteneur de la visionneuse. DIV
. Dans l’exemple suivant, supposons que la page web autorise le conteneur de la visionneuse. DIV
pour prendre 40 % de la taille de la fenêtre du navigateur web. Et sa hauteur est libre de toute restriction. Le code de HTML de la page web se présente comme suit :
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
.holder {
width: 40%;
}
</style>
</head>
<body>
<div class="holder"></div>
</body>
</html>
L’ajout de la visionneuse à une telle page est similaire aux étapes d’incorporation à taille fixe. La seule différence est que vous n’avez pas besoin de définir explicitement la taille de la visionneuse.
DIV
.Toutes les étapes ci-dessus sont identiques à l’incorporation de tailles fixes. Ajouter le conteneur DIV
à la "holder"
DIV
. Le code suivant est un exemple complet. Notez comment la taille de la visionneuse change lorsque le navigateur est redimensionné et comment le rapport d’aspect de la visionneuse correspond à la ressource.
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://aodmarketingna.assetsadobe.com/etc/dam/viewers/s7viewers/html5/js/InteractiveImage.js"></script>
<style type="text/css">
.holder {
width: 40%;
}
</style>
</head>
<body>
<div class="holder">
<div id="s7viewer" style="position:relative"></div>
</div>
<script type="text/javascript">
var interactiveImage = new s7viewers.InteractiveImage({
"containerId":"s7viewer",
"params":{
"asset":"/content/dam/mac/aodmarketingna/shoppable-banner/shoppable-banner.jpg",
"serverurl":"http://aodmarketingna.assetsadobe.com/is/image"
}
}).init();
</script>
</body>
</html>
La page d’exemples suivante illustre d’autres utilisations réelles de l’incorporation en responsive design avec une hauteur illimitée :
Incorporation de taille flexible avec largeur et hauteur définie
Si l’incorporation de tailles flexibles avec largeur et hauteur est définie, le style de la page web est différent. Elle fournit les deux tailles au "holder"
DIV et centrez-le dans la fenêtre du navigateur. En outre, la page web définit la taille de la variable HTML
et BODY
à 100 %.
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
html, body {
width: 100%;
height: 100%;
}
.holder {
position: absolute;
left: 20%;
top: 20%;
width: 60%;
height: 60%;
}
</style>
</head>
<body>
<div class="holder"></div>
</body>
</html>
Les autres étapes d’incorporation sont identiques aux étapes utilisées pour l’incorporation réactive avec une hauteur illimitée. L’exemple qui en résulte est le suivant :
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://aodmarketingna.assetsadobe.com/etc/dam/viewers/s7viewers/html5/js/InteractiveImage.js"></script>
<style type="text/css">
html, body {
width: 100%;
height: 100%;
}
.holder {
position: absolute;
left: 20%;
top: 20%;
width: 60%;
height: 60%;
}
</style>
</head>
<body>
<div class="holder">
<div id="s7viewer" style="position:relative"></div>
</div>
<script type="text/javascript">
var interactiveImage = new s7viewers.InteractiveImage({
"containerId":"s7viewer",
"params":{
"asset":"/content/dam/mac/aodmarketingna/shoppable-banner/shoppable-banner.jpg",
"serverurl":"http://aodmarketingna.assetsadobe.com/is/image"
}
}).init();
</script>
</body>
</html>
Incorporation à l’aide d’une API basée sur Setter
Au lieu d’utiliser l’initialisation basée sur JSON, il est possible d’utiliser une API basée sur un setter et un constructeur sans args. L’utilisation de ce constructeur d’API ne prend aucun paramètre et les paramètres de configuration sont spécifiés à l’aide de setContainerId()
, setParam()
, et setAsset()
Méthodes d’API avec des appels JavaScript distincts.
L’exemple suivant illustre l’utilisation de l’incorporation de tailles fixes avec l’API basée sur setter :
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://aodmarketingna.assetsadobe.com/etc/dam/viewers/s7viewers/html5/js/InteractiveImage.js"></script>
<style type="text/css">
#s7viewer.s7interactiveimage {
width: 1174px;
height: 500px;
}
</style>
</head>
<body>
<div id="s7viewer" style="position:relative"></div>
<script type="text/javascript">
var interactiveImage = new s7viewers.InteractiveImage();
interactiveImage.setContainerId("s7viewer");
interactiveImage.setParam("serverurl", "http://aodmarketingna.assetsadobe.com/is/image");
interactiveImage.setAsset("/content/dam/mac/aodmarketingna/shoppable-banner/shoppable-banner.jpg");
interactiveImage.init();
</script>
</body>
</html>