JavaScript API (Client-Side API)

Kameleoon met à disposition une API et des fonctions afin de vous permettre de gérer un comportement spécifique, ou des cas de tests complexes.

runWhenElementPresent

Cette fonction permet d'exécuter une fonction JavaScript dès lors qu'un élément spécifique a été trouvé par Kameleoon sur la page (identifié par un sélecteur CSS). 

Kameleoon.API.runWhenElementPresent(selector, targetFunction, pollDelay)
  • selector : Sélecteur CSS d'accès à l'élément.
  • targetFunction : Fonction JavaScript à exécuter lorsque l'élément est trouvé par Kameleoon.
  • pollDelay : Interval de recherche en millisecondes. Kameleoon essaiera de trouver l'élément à interval régulier.
Par exemple :
Kameleoon.API.runWhenElementPresent("#bloc-2345", function(){ jQuery("#bloc-2345").text("Mon nouveau texte"); }, 200);

runWhenConditionTrue

Cette fonction permet d'exécuter une fonction JavaScript dès lors que la fonction JavaScript conditionFunction retourne true

Kameleoon.API.runWhenConditionTrue(conditionFunction, targetFunction, pollDelay)
  • conditionFunction : Fonction JavaScript à exécuter. Doit retourner true ou false.
  • targetFunction : Fonction JavaScript à exécuter lorsque la fonction conditionFunction retourne true.
  • pollDelay : Interval de recherche en millisecondes. Kameleoon exécutera la fonction conditionFunction à interval régulier.
Par exemple :
Kameleoon.API.runWhenConditionTrue(function(){ return typeof jQuery != "undefined"; }, function(){ jQuery("#bloc-2345").text("Mon nouveau texte"); }, 200);

processRedirect

Cette fonction permet de gérer les tests avec redirection d'URL.

Kameleoon.API.processRedirect(redirectionURL, crossDomain)
      • redirectionURL : URL de la page vers laquelle rediriger le visiteur.
      • crossDomain : Positionner la valeur true s'il s'agit d'une redirection vers un autre domaine.

triggerEvent

Cette fonction permet de déclencher un événement JavaScript. Cela peut s'avérer très utile lors de tests A/B réalisés, par exemple, sur des pop-ups.

Lorsque la popup s'ouvre, appelez alors la fonction Kameleoon.API.triggerEvent("popup_opened") pour indiquer à Kameleoon que le test doit être lancé. Ensuite, lors du paramétrage de votre test via l'éditeur Kameleoon, il vous suffira de définir un ciblage avancé de type « Évènement personnalisé » et de préciser ici le nom de votre événement popup_opened.

Kameleoon.API.triggerEvent(eventName)
      • eventName : Nom de l'évènement à déclencher.

processConversion

Cette fonction permet de remonter une conversion à notre outil de reporting interne.

Kameleoon.API.processConversion(nameOrId, conversionRevenue)
      • nameOrId : Nom de l'objectif tel que défini lors de la création de vos objectifs dans notre outil de reporting interne.
      • conversionRevenue (Optionnel) :  Montant de la transaction. Cela doit être un nombre de type float.

processOmniture

Si vous utilisez le plugin Omniture doPlugins, la fonction processOmniture doit être appelée dans le code du plugin afin que Kameleoon puisse correctement remonter les résultats de votre test dans Omniture. Ajoutez les lignes de code ci-dessous :

if (window.Kameleoon) {
	Kameleoon.API.processOmniture(s);
}
Attention : La variable ci-dessus notée « s » dans la fonction processOmniture() doit être votre objet Omniture. Par défaut, cette variable s'appelle « s ». Pour tester si la fonction doPlugins est utilisée, vous pouvez taper la commande suivante en console web : s_doPlugins. Si celle-ci retourne une erreur, c'est que la fonction n'est pas utilisée sur votre site Internet.

loadScriptSequentially

Cette fonction permet de charger une librairie JavaScript externe, pour par exemple tester un plugin de type Zopim ou LivePerson.

Kameleoon.API.loadScriptSequentially(script_url)
  • script_url : URL du script externe à charger dans le code de la variante.

Par exemple :

Kameleoon.API.loadScriptSequentially("https://www.votrescript.com/script.js")

readLocalData

Cette fonction permet de lire la valeur d'un cookie.

Kameleoon.Utils.readLocalData(cookieName)
  • cookieName : Nom du cookie dont vous souhaitez obtenir la valeur.

Par exemple :

Kameleoon.Utils.readLocalData("monCookie")

createLocalData

Cette fonction permet de créer un cookie sur votre navigateur web.

Kameleoon.Utils.createLocalData(cookieName, cookieValue, expirationInDays)
  • cookieName : Nom du cookie à créer.
  • cookieValue (Optionnel)  : Valeur du cookie.
  • expirationInDays (Optionnel)  : Nombre de jours avant expiration du cookie. Si ce paramètre n'est pas renseignée, Kameleoon créera un cookie de session.

Par exemple :

Kameleoon.Utils.createLocalData("monCookie", "maValeur", 1)
Vous avez d’autres questions ? Envoyer une demande
Réalisé par Zendesk