Nutze unseren Kampagnen-Booster, um das Beste aus Black Friday herauszuholen

In diesem Video zeigen wir dir, wie du die Code-Snippets testen kannst.

In nur drei Schritten zu deinem Black Friday Setup

Für viele Marketer gehört Black Friday zu den umsatzstärksten Tagen des Jahres. Die Ziele sind hoch, der Wettbewerb noch höher. Trotzdem bleiben die Ergebnisse oft hinter den Erwartungen zurück.

Der Hauptgrund: Kampagnen und Angebote werden auf der Webseite nicht deutlich genug wahrgenommen. Nutzer übersehen Rabatte, Aktionen gehen im Layout unter und wertvolle Conversion-Potenziale bleiben ungenutzt.

  • Wichtig: Aktiviere den jeweiligen Kampagnen Booster in deinem visuellen Editor

  • Kopiere das angepasste JavaScript & CSS und überprüfe es in deinem Setup

  • Pflege deinen Content nach und stelle den Test nach erfolgreicher QA live

Hinweis: Varify übernimmt keine Verantwortung für die Funktionsweise des Codes und der Informationen. Es liegt in der Verantwortung des Nutzers, den Testcode gründlich zu überprüfen und korrekt umzusetzen.

So nutzen unsere Kunden Varify an Black Friday

Flexibilität ohne Entwickler

Verändere das Styling und füge Kampagnen-Booster schnell selbst hinzu, ohne auf die Dev-Abteilung angewiesen zu sein. Das spart Zeit und du kannst sofort reagieren.

Schnelle Landingpage-Tests

Dank unseres minimalen Scripts kannst du Landingpages in deinem CMS designen und mit Redirects direkt testen – schnell, einfach und ohne lange Wartezeiten. 

Einfaches Styling für den Black-Friday

Willst du deinen Shop auf Black Friday anpassen oder bestimmte Elemente durch Verschieben hervorheben? Mit dem visuellen Editor kannst du das Design blitzschnell ändern, ohne tief in den Code einzugreifen.

Präzises Targeting für Kampagnen

Teste, wie bestimmte Zielgruppen auf deine Änderungen reagieren, indem du sie gezielt ansteuerst – mit UTM-Parametern, Geräteprofilen oder Ländern. So weißt du genau, was funktioniert – und für wen.

Angepasstes JS & CSS für die Varify Kampagnen Booster

Exit Intent

Du kannst ein Popup mit einem Bild anzeigen, das zu einem bestimmten Zeitpunkt erscheint. Wann genau es auftaucht, kannst du selbst anpassen.

Additional JavaScript


window.varify.helpers.onDomLoaded(() => {
  // === BASIC SETTINGS (adjust if needed) ===
  const POPUP_SESSION_KEY = 'varifyExitPopupSeen'; // sessionStorage key
  const targetUrl = 'https://varify.io/webinars'; // landing page URL
  const imageSrc = 'https://images.varify.io/bb686c8cd78a3cad7c19b26d7df61c2b634f336481bd52130e1c1d570343f346/example_bf.jpg'; // popup image
  const imageAlt = 'Black Friday Deal'; // image alt text
  const popupDelayMs = 1000; // delay before popup opens (in ms)

    function isInEditor() {
    const p = new URLSearchParams(location.search);
    return p.has('varify-variation-name') || p.has('varify-variation-id');
  }
  if (isInEditor()) return;

  window.varify.helpers.waitFor('.varify-exitIntent-content', (contentDiv) => {
    const wrapper = document.querySelector('.varify-exitIntent-wrapper');
    const backdrop = document.querySelector('.varify-exitIntent-backdrop');
    const modal = document.querySelector('.varify-exitIntent');
    const closeBtn = document.querySelector('.varify-exitIntent-close');

    if (!wrapper || !backdrop || !modal || !contentDiv) return;

    const alreadySeen = sessionStorage.getItem(POPUP_SESSION_KEY) === '1';

    // move close button into modal so it overlays the image
    if (closeBtn && closeBtn.parentElement !== modal) {
      modal.appendChild(closeBtn);
    }

    // === replace popup content with clickable image ===
    contentDiv.innerHTML = '';
    const link = document.createElement('a');
    link.href = targetUrl;
    link.target = '_blank';
    link.rel = 'noopener noreferrer';

    const img = document.createElement('img');
    img.src = imageSrc;
    img.alt = imageAlt;
    img.style.display = 'block';
    img.style.width = '100%';
    img.style.height = 'auto';

    link.appendChild(img);
    contentDiv.appendChild(link);

    // === always block existing exit-intent triggers ===
    const stopExitIntent = (evt) => {
      if (
        (evt.type === 'mouseleave' || evt.type === 'mouseout') &&
        (evt.relatedTarget === null || evt.clientY  {
      sessionStorage.setItem(POPUP_SESSION_KEY, '1');
      wrapper.classList.add('vf-show');
    };
    setTimeout(openPopup, popupDelayMs);

    // === close helpers ===
    const closePopup = () => {
      wrapper.classList.remove('vf-show');
    };

    // close via X button
    if (closeBtn) {
      closeBtn.addEventListener('click', (e) => {
        e.preventDefault();
        closePopup();
      });
    }

    // close via click outside modal
    backdrop.addEventListener('click', (e) => {
      if (!modal.contains(e.target)) {
        closePopup();
      }
    });

    // close via ESC key
    document.addEventListener('keydown', (e) => {
      if (e.key === 'Escape') {
        closePopup();
      }
    });
  });
});


    
/* Wrapper with your background */ .varify-code-block { background: #f5f2f0; border-radius: 8px; border: 1px solid #e0ddd9; padding: 0; position: relative; font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace; margin-bottom: 24px; } /* Code area */ .varify-code-block pre { margin: 0; padding: 16px 18px; overflow: auto; white-space: pre; } .varify-code-block code { color: #333; font-size: 13px; line-height: 1.55; display: block; } /* Copy button – fully neutralized, no more blue */ .varify-copy-btn { all: unset !important; /* removes ALL default/theme/elementor styles */ display: inline-block !important; position: absolute !important; top: 10px !important; right: 10px !important; padding: 6px 10px !important; border-radius: 6px !important; background: rgba(255,255,255,0.4) !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; border: 1px solid rgba(255,255,255,0.35) !important; color: #333 !important; font-size: 11px !important; font-weight: 600 !important; text-decoration: none !important; cursor: pointer !important; box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important; } /* Optional feedback after copy */ .varify-copy-btn.copied { background: rgba(80, 200, 120, 0.55) !important; color: #fff !important; } document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });
Additional CSS



/* wrapper: hidden by default, visible when vf-show is added */
.varify-exitIntent-wrapper {
  display: none;
}

.varify-exitIntent-wrapper.vf-show {
  display: block;
}

/* backdrop: full-screen overlay */
.varify-exitIntent-wrapper.vf-show .varify-exitIntent-backdrop {
  position: fixed;
  inset: 0;
  display: flex !important;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 2147483647;
}

/* modal: pure container around the image */
.varify-exitIntent {
  position: relative;
  max-width: 90vw;
  max-height: 90vh;
  background: transparent;
  border: none;
  box-shadow: none;
}

/* remove padding: pure image modal */
.varify-exitIntent-content {
  padding: 0 !important;
}

/* image should never be larger than viewport height */
.varify-exitIntent-content img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 90vh;
  object-fit: contain;
}

/* hide original header bar if present */
.varify-exitIntent-header {
  display: none !important;
}

/* close button overlay above the image */
.varify-exitIntent-close {
  position: absolute !important;
  top: 12px;
  right: 12px;
  width: 24px;
  height: 24px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  background: transparent;
  color: #fff !important;
  cursor: pointer;
  z-index: 2147483647;
}


    
/* Wrapper with your background */ .varify-code-block { background: #f5f2f0; border-radius: 8px; border: 1px solid #e0ddd9; padding: 0; position: relative; font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace; margin-bottom: 24px; } /* Code area */ .varify-code-block pre { margin: 0; padding: 16px 18px; overflow: auto; white-space: pre; } .varify-code-block code { color: #333; font-size: 13px; line-height: 1.55; display: block; } /* Copy button – fully neutralized, no more blue */ .varify-copy-btn { all: unset !important; /* removes ALL default/theme/elementor styles */ display: inline-block !important; position: absolute !important; top: 10px !important; right: 10px !important; padding: 6px 10px !important; border-radius: 6px !important; background: rgba(255,255,255,0.4) !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; border: 1px solid rgba(255,255,255,0.35) !important; color: #333 !important; font-size: 11px !important; font-weight: 600 !important; text-decoration: none !important; cursor: pointer !important; box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important; } /* Optional feedback after copy */ .varify-copy-btn.copied { background: rgba(80, 200, 120, 0.55) !important; color: #fff !important; } document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });

Vertraue auf die größte in Deutschland entwickelte A/B-Testing-Plattform

Zahlen aus BuiltWith.com: Verglichen wurden deutsche A/B-Testing-Plattformen. Stand Oktober 2025

Exit Intent

Dieses Popup enthält Text, Bullet Points und einen Button. Du kannst den Text nach Belieben anpassen und festlegen, wann das Popup erscheinen soll, um deine Nutzer gezielt zu informieren.

Additional JavaScript


window.varify.helpers.onDomLoaded(() => {
  // ================================
  // CONFIG – YOU CAN EDIT THIS
  // ================================

  // Unique key for this popup. If you duplicate the test, change this key.
  const POPUP_SESSION_KEY = 'varifyBFContentPopupSeen';

  // When should the popup appear after page load (in milliseconds)?
  const POPUP_DELAY_MS = 1000;

  // Popup texts
  const POPUP_HEADLINE = 'Black Friday Mega Deal!';
  const POPUP_SUBHEADLINE = 'Don\'t miss our biggest discounts';

  // Bullet points (each entry = one bullet line)
  const POPUP_BULLETS = [
    'Up to 50% off everything',
    'Free shipping on all orders',
    'Limited time offer'
  ];

  // CTA button
  const POPUP_CTA_URL = 'https://example.com/black-friday'; // landing page URL
  const POPUP_CTA_TEXT = 'Save Now →';                       // CTA label

  // ================================
  // RUNTIME LOGIC – DO NOT TOUCH :)
  // ================================

  // Do not run inside Varify editor
  function isInEditor() {
    const p = new URLSearchParams(location.search);
    return p.has('varify-variation-name') || p.has('varify-variation-id');
  }
  if (isInEditor()) return;

  window.varify.helpers.waitFor('.varify-exitIntent-content', (contentDiv) => {
    const wrapper  = document.querySelector('.varify-exitIntent-wrapper');
    const backdrop = document.querySelector('.varify-exitIntent-backdrop');
    const modal    = document.querySelector('.varify-exitIntent');
    const closeBtn = document.querySelector('.varify-exitIntent-close');

    if (!wrapper || !backdrop || !modal || !contentDiv) return;

    const alreadySeen = sessionStorage.getItem(POPUP_SESSION_KEY) === '1';

    // Always block the original exit-intent logic of the site
    const stopExitIntent = (evt) => {
      if (
        (evt.type === 'mouseleave' || evt.type === 'mouseout') &&
        (evt.relatedTarget === null || evt.clientY <= 0) ) { evt.stopImmediatePropagation(); if (evt.preventDefault) evt.preventDefault(); } }; document.addEventListener('mouseleave', stopExitIntent, true); document.addEventListener('mouseout', stopExitIntent, true); // If shown once in this session: hide wrapper and stop everything if (alreadySeen) { wrapper.classList.remove('vf-show'); wrapper.style.display = 'none'; return; } // Ensure close button is inside the modal so it overlays the content if (closeBtn && closeBtn.parentElement !== modal) { modal.appendChild(closeBtn); } // Build popup content contentDiv.innerHTML = ''; contentDiv.style.textAlign = 'left'; const headline = document.createElement('p'); headline.className = 'bf-exit-intent-headline'; headline.textContent = POPUP_HEADLINE; const subheadline = document.createElement('p'); subheadline.className = 'bf-exit-intent-subheadline'; subheadline.textContent = POPUP_SUBHEADLINE; const ul = document.createElement('ul'); ul.className = 'bf-exit-intent-bullets'; POPUP_BULLETS.forEach((txt) => {
      const li = document.createElement('li');
      li.textContent = txt;
      ul.appendChild(li);
    });

    const cta = document.createElement('a');
    cta.className = 'bf-exit-intent-cta';
    cta.href = POPUP_CTA_URL;
    cta.target = '_blank';
    cta.rel = 'noopener noreferrer';
    cta.textContent = POPUP_CTA_TEXT;

    contentDiv.appendChild(headline);
    contentDiv.appendChild(subheadline);
    contentDiv.appendChild(ul);
    contentDiv.appendChild(cta);

    // Open popup after delay (once per session)
    const openPopup = () => {
      sessionStorage.setItem(POPUP_SESSION_KEY, '1');
      wrapper.classList.add('vf-show');
    };
    setTimeout(openPopup, POPUP_DELAY_MS);

    // Close helpers
    const closePopup = () => {
      wrapper.classList.remove('vf-show');
    };

    // Close via X button
    if (closeBtn) {
      closeBtn.addEventListener('click', (e) => {
        e.preventDefault();
        closePopup();
      });
    }

    // Close via click outside modal
    backdrop.addEventListener('click', (e) => {
      if (!modal.contains(e.target)) {
        closePopup();
      }
    });

    // Close via ESC key
    document.addEventListener('keydown', (e) => {
      if (e.key === 'Escape') {
        closePopup();
      }
    });
  });
});

    
/* Wrapper with your background */
.varify-code-block {
background: #f5f2f0;
border-radius: 8px;
border: 1px solid #e0ddd9;
padding: 0;
position: relative;
font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace;
margin-bottom: 24px;
}

/* Code area */
.varify-code-block pre {
margin: 0;
padding: 16px 18px;
overflow: auto;
white-space: pre;
}

.varify-code-block code {
color: #333;
font-size: 13px;
line-height: 1.55;
display: block;
}

/* Copy button – fully neutralized, no more blue */
.varify-copy-btn {
all: unset !important; /* removes ALL default/theme/elementor styles */

display: inline-block !important;
position: absolute !important;
top: 10px !important;
right: 10px !important;

padding: 6px 10px !important;
border-radius: 6px !important;

background: rgba(255,255,255,0.4) !important;
backdrop-filter: blur(12px) !important;
-webkit-backdrop-filter: blur(12px) !important;

border: 1px solid rgba(255,255,255,0.35) !important;

color: #333 !important;
font-size: 11px !important;
font-weight: 600 !important;
text-decoration: none !important;

cursor: pointer !important;
box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
}

/* Optional feedback after copy */
.varify-copy-btn.copied {
background: rgba(80, 200, 120, 0.55) !important;
color: #fff !important;
}
document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });

Additional CSS


/* ================================
   BASE POPUP BEHAVIOUR
   ================================ */

/* Wrapper hidden by default, visible when .vf-show is added via JS */
.varify-exitIntent-wrapper {
  display: none;
}

.varify-exitIntent-wrapper.vf-show {
  display: block;
}

/* Backdrop: dark overlay, only when wrapper has .vf-show */
.varify-exitIntent-backdrop {
  display: none !important;
  background-color: rgba(0, 0, 0, 0.8) !important;
}

.varify-exitIntent-wrapper.vf-show .varify-exitIntent-backdrop {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: fixed;
  inset: 0;
  z-index: 2147483646;
}

/* Optional: if you ever want to lock scroll on the page:
.vf-no-scroll {
  overflow: hidden !important;
}
*/

/* Header not needed for this design */
.varify-exitIntent-header {
  display: none !important;
}

/* ================================
   MODAL STYLING (BLACK FRIDAY LOOK)
   ================================ */

.varify-exitIntent {
  background-color: #000 !important;
  color: #fff !important;
  border-radius: 10px !important;
  box-shadow: 0 0 8px rgb(68 64 64 / 30%) !important;
  width: 540px !important;
  max-width: 80% !important;
  max-height: 80% !important;
  position: relative !important;
  z-index: 2147483647 !important;
  /* above backdrop, below close button */
  overflow: visible !important;
  /* do not cut off the close button */
}

/* If your HTML hat eine .varify-exitIntent-inner: scroll only inside */
.varify-exitIntent-inner {
  max-height: 80vh;
  overflow: auto;
}

/* Content block */
.varify-exitIntent-content {
  padding: 30px !important;
  text-align: left !important;
}

/* ================================
   TEXT STYLES
   ================================ */

.bf-exit-intent-headline {
  font-size: 22px;
  font-weight: 800;
  margin: 0 0 10px;
  color: #fff;
}

.bf-exit-intent-subheadline {
  font-size: 18px;
  margin: 0 0 15px;
  color: #fff;
}

.bf-exit-intent-bullets {
  list-style: none;
  padding: 0;
  margin: 0 0 20px;
}

.bf-exit-intent-bullets li {
  margin-bottom: 6px;
  padding-left: 20px;
  position: relative;
  color: #fff;
}

.bf-exit-intent-bullets li:before {
  content: "•";
  color: #d32c2c;
  position: absolute;
  left: 0;
  top: 0;
}

/* CTA button */
.bf-exit-intent-cta {
  display: inline-block;
  background-color: #d32c2c;
  color: #fff !important;
  padding: 10px 20px;
  border-radius: 4px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none !important;
}

.bf-exit-intent-cta:hover {
  background-color: #b71c1c;
}

/* ================================
   CLOSE BUTTON (X) – ALWAYS ON TOP
   ================================ */

.varify-exitIntent-close {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  width: 28px !important;
  height: 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  z-index: 2147483648 !important;
  /* above everything */
  color: #fff !important;
}

.varify-exitIntent-close-icon {
  width: 16px;
  height: 16px;
  color: #fff !important;
}



    
/* Wrapper with your background */ .varify-code-block { background: #f5f2f0; border-radius: 8px; border: 1px solid #e0ddd9; padding: 0; position: relative; font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace; margin-bottom: 24px; } /* Code area */ .varify-code-block pre { margin: 0; padding: 16px 18px; overflow: auto; white-space: pre; } .varify-code-block code { color: #333; font-size: 13px; line-height: 1.55; display: block; } /* Copy button – fully neutralized, no more blue */ .varify-copy-btn { all: unset !important; /* removes ALL default/theme/elementor styles */ display: inline-block !important; position: absolute !important; top: 10px !important; right: 10px !important; padding: 6px 10px !important; border-radius: 6px !important; background: rgba(255,255,255,0.4) !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; border: 1px solid rgba(255,255,255,0.35) !important; color: #333 !important; font-size: 11px !important; font-weight: 600 !important; text-decoration: none !important; cursor: pointer !important; box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important; } /* Optional feedback after copy */ .varify-copy-btn.copied { background: rgba(80, 200, 120, 0.55) !important; color: #fff !important; } document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });

Black Friday Subtile Notification

Notification

Eine dezente Benachrichtigung, die unten links erscheint. Damit kannst du den Nutzer auf eine andere Aktionsseite weiterleiten, ohne ihn zu stören – perfekt für subtile Call-to-Actions.

Additional JavaScript



window.varify.helpers.onDomLoaded(() => {
  // ================================
  // CONFIG – YOU CAN EDIT THIS
  // ================================

  // Notification should be shown only once per browser session
  const SESSION_KEY = 'varifyBFNotificationSeen';

  // Text content
  const INFO_TEXT = 'Black Friday Deal';                      // small badge
  const HEADLINE_TEXT = 'Black Friday Special';               // main title
  const SUBHEADLINE_TEXT = 'Save 30% on everything today';    // sub text
  const CTA_TEXT = 'Save now →';                              // CTA label

  // Link for CTA and full notification
  const CTA_LINK = 'https://example.com/black-friday';

  // ================================
  // RUNTIME LOGIC – DO NOT TOUCH :)
  // ================================

  function isInEditor() {
    const p = new URLSearchParams(location.search);
    return p.has('varify-variation-name') || p.has('varify-variation-id');
  }
  if (isInEditor()) return;

  window.varify.helpers.waitFor('.varify-notification-content', () => {
    const contentDiv = document.querySelector('.varify-notification-content');
    const wrapper = document.querySelector('.varify-notification-wrapper');
    const notification = document.querySelector('.varify-notification');
    const closeBtn = document.querySelector('.varify-notification-close');
    const wrapperLink = document.querySelector('.varify-notification-link');

    if (!contentDiv || !notification) return;

    const alreadySeen = sessionStorage.getItem(SESSION_KEY) === '1';

    // === If already seen: hide everything immediately and do nothing further ===
    if (alreadySeen) {
      if (wrapper) wrapper.style.display = 'none';
      notification.style.display = 'none';
      return;
    }

    // === First session review – set content ===

    // Info badge
    let infoDiv = contentDiv.querySelector('.webinar-info');
    if (!infoDiv) {
      infoDiv = document.createElement('div');
      infoDiv.className = 'webinar-info';
      contentDiv.insertBefore(infoDiv, contentDiv.firstChild);
    }
    infoDiv.textContent = INFO_TEXT;

    // Headline
    const headlineEl = contentDiv.querySelector('.varify-notification-headline');
    if (headlineEl) {
      headlineEl.textContent = HEADLINE_TEXT;
    }

    // Subheadline
    const subEl = contentDiv.querySelector('.varify-notification-text');
    if (subEl) {
      subEl.textContent = SUBHEADLINE_TEXT;
    }

    // CTA inside notification
    let ctaEl = contentDiv.querySelector('.webinar-signup');
    if (!ctaEl) {
      ctaEl = document.createElement('a');
      ctaEl.className = 'webinar-signup';
      contentDiv.appendChild(ctaEl);
    }
    ctaEl.textContent = CTA_TEXT;
    ctaEl.href = CTA_LINK;
    ctaEl.target = '_blank';
    ctaEl.rel = 'noopener noreferrer';

    // whole notification clickable
    if (wrapperLink) {
      wrapperLink.href = CTA_LINK;
      wrapperLink.target = '_blank';
      wrapperLink.rel = 'noopener noreferrer';
    }

    // Mark as 'seen' from now on
    sessionStorage.setItem(SESSION_KEY, '1');

    // Close-Button: versteckt Notification komplett (Session-Flag bleibt)
    if (closeBtn) {
      closeBtn.addEventListener('click', (e) => {
        e.preventDefault();
        if (wrapper) wrapper.style.display = 'none';
        notification.style.display = 'none';
      });
    }
  });
});



    
/* Wrapper with your background */
.varify-code-block {
background: #f5f2f0;
border-radius: 8px;
border: 1px solid #e0ddd9;
padding: 0;
position: relative;
font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace;
margin-bottom: 24px;
}

/* Code area */
.varify-code-block pre {
margin: 0;
padding: 16px 18px;
overflow: auto;
white-space: pre;
}

.varify-code-block code {
color: #333;
font-size: 13px;
line-height: 1.55;
display: block;
}

/* Copy button – fully neutralized, no more blue */
.varify-copy-btn {
all: unset !important; /* removes ALL default/theme/elementor styles */

display: inline-block !important;
position: absolute !important;
top: 10px !important;
right: 10px !important;

padding: 6px 10px !important;
border-radius: 6px !important;

background: rgba(255,255,255,0.4) !important;
backdrop-filter: blur(12px) !important;
-webkit-backdrop-filter: blur(12px) !important;

border: 1px solid rgba(255,255,255,0.35) !important;

color: #333 !important;
font-size: 11px !important;
font-weight: 600 !important;
text-decoration: none !important;

cursor: pointer !important;
box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
}

/* Optional feedback after copy */
.varify-copy-btn.copied {
background: rgba(80, 200, 120, 0.55) !important;
color: #fff !important;
}
document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });

Additional CSS


/* Black box with white text */
.varify-notification.v_animated.v_animation.varify-init {
  background-color: #000 !important;
  color: #fff !important;
}

/* Headline and text in white */
.varify-notification-headline,
.varify-notification-text {
  color: #fff !important;
}

/* Text margin at the bottom */
.varify-notification-text {
  margin-bottom: 5px !important;
}

/* CTA text style */
.webinar-signup {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

.webinar-signup:hover {
  text-decoration: underline !important;
}

/* Make the close icon (X) visible */
.varify-notification-close {
  color: #fff !important;
}

/* Bubble design for "Black Friday Deal" */
.webinar-info {
  background-color: #d32c2c !important;
  /* red bubble */
  color: #fff !important;
  /* white text */
  border-radius: var(--border-radius--200) !important;
  font-weight: 600 !important;
  font-size: 12px !important;
  padding: 2px 6px !important;
  max-width: 160px !important;
  text-align: center !important;
  margin-bottom: 8px !important;
  margin-top: 6px !important;
}

/* ---------- MOBILE ADJUSTMENTS ---------- */
@media (max-width: 767px) {
  .varify-notification-headline {
    font-size: 14px !important;
  }

  .varify-notification-text {
    font-size: 12px !important;
    margin-bottom: 4px !important;
  }

  .webinar-info {
    font-size: 10px !important;
    padding: 1px 4px !important;
    max-width: 120px !important;
    margin-bottom: 6px !important;
  }

  .webinar-signup {
    font-size: 12px !important;
  }
}

@media (max-width: 576px) {

  /* Smaller overall box */
  .varify-notification {
    padding: 8px 10px !important;
    min-width: 200px !important;
    max-width: 260px !important;
    border-radius: 3px !important;
    bottom: 20px !important;
    left: 20px !important;
  }

  /* Smaller headline */
  .varify-notification-headline {
    font-size: 13px !important;
    line-height: 1.2 !important;
    margin-bottom: 2px !important;
  }

  /* Smaller subheadline */
  .varify-notification-text {
    font-size: 11px !important;
    line-height: 1.2 !important;
  }

  /* Smaller badge */
  .webinar-info {
    font-size: 10px !important;
    padding: 1px 4px !important;
    max-width: 100px !important;
    margin-bottom: 4px !important;
  }

  /* Smaller Close-X */
  .varify-notification-close {
    font-size: 16px !important;
    width: 12px !important;
    height: 12px !important;
    right: 10px !important;
    margin-top: -6px !important;
  }

}



    
/* Wrapper with your background */ .varify-code-block { background: #f5f2f0; border-radius: 8px; border: 1px solid #e0ddd9; padding: 0; position: relative; font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace; margin-bottom: 24px; } /* Code area */ .varify-code-block pre { margin: 0; padding: 16px 18px; overflow: auto; white-space: pre; } .varify-code-block code { color: #333; font-size: 13px; line-height: 1.55; display: block; } /* Copy button – fully neutralized, no more blue */ .varify-copy-btn { all: unset !important; /* removes ALL default/theme/elementor styles */ display: inline-block !important; position: absolute !important; top: 10px !important; right: 10px !important; padding: 6px 10px !important; border-radius: 6px !important; background: rgba(255,255,255,0.4) !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; border: 1px solid rgba(255,255,255,0.35) !important; color: #333 !important; font-size: 11px !important; font-weight: 600 !important; text-decoration: none !important; cursor: pointer !important; box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important; } /* Optional feedback after copy */ .varify-copy-btn.copied { background: rgba(80, 200, 120, 0.55) !important; color: #fff !important; } document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });

Black Friday Information Bar

Information Bar

Mit der Info Bar kannst du drei verschiedene Inhalte anzeigen und das SVG durch dein eigenes Design ersetzen. Die Tags lassen sich ebenfalls anpassen, und das ganze Element ist verlinkt, sodass du es einfach weiterverlinken kannst.

Additional JavaScript



window.varify.helpers.waitFor('.varify-usp-bar', (bar) => {
  // === SETTINGS FOR YOU ===
  const headlines = [
    '30% OFF EVERYTHING',
    '30% OFF EVERYTHING',
    '30% OFF EVERYTHING'
  ];

  const mobileHeadline = '30% OFF EVERYTHING – MOBILE SPECIAL';

  const targetUrl = 'https://example.com/black-friday';

  const iconVariant = 'cross';

  const crossIconSvg =
    '';

  const defaultIconSvg =
    '';

  const isMobile = window.matchMedia('(max-width: 767px)').matches;

  if (isMobile) {
    bar.classList.add('varify-usp-bar--mobile-single');
  }

  // === APPLY TEXTS ===
  bar.querySelectorAll('.varify-usp-bar-headline').forEach((el, idx) => {
    if (isMobile) {
      el.textContent = mobileHeadline;
    } else {
      el.textContent = headlines[idx] || headlines[0];
    }
  });

  // === APPLY ICONS ===
  bar.querySelectorAll('.varify-usp-bar-icon').forEach((el) => {
    el.innerHTML = iconVariant === 'cross' ? crossIconSvg : defaultIconSvg;
  });

  // === MAKE THE BAR CLICKABLE ===
  bar.addEventListener('click', (evt) => {
    if (evt.target.closest('.varify-usp-bar-close')) return;
    window.location.href = targetUrl;
  });

  // ------------------------------------------------------------------
  // === MOBILE FEATURE (NEU – REST UNVERÄNDERT) ===
  // ------------------------------------------------------------------
  if (isMobile) {
    // nur der erste USP bleibt sichtbar
    const usps = bar.querySelectorAll('.varify-usp-bar-usp');
    usps.forEach((usp, index) => {
      if (index > 0) {
        usp.style.display = 'none';
      }
    });
  }
});


    
/* Wrapper with your background */
.varify-code-block {
background: #f5f2f0;
border-radius: 8px;
border: 1px solid #e0ddd9;
padding: 0;
position: relative;
font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace;
margin-bottom: 24px;
}

/* Code area */
.varify-code-block pre {
margin: 0;
padding: 16px 18px;
overflow: auto;
white-space: pre;
}

.varify-code-block code {
color: #333;
font-size: 13px;
line-height: 1.55;
display: block;
}

/* Copy button – fully neutralized, no more blue */
.varify-copy-btn {
all: unset !important; /* removes ALL default/theme/elementor styles */

display: inline-block !important;
position: absolute !important;
top: 10px !important;
right: 10px !important;

padding: 6px 10px !important;
border-radius: 6px !important;

background: rgba(255,255,255,0.4) !important;
backdrop-filter: blur(12px) !important;
-webkit-backdrop-filter: blur(12px) !important;

border: 1px solid rgba(255,255,255,0.35) !important;

color: #333 !important;
font-size: 11px !important;
font-weight: 600 !important;
text-decoration: none !important;

cursor: pointer !important;
box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
}

/* Optional feedback after copy */
.varify-copy-btn.copied {
background: rgba(80, 200, 120, 0.55) !important;
color: #fff !important;
}
document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });

Additional CSS



/* Black Friday styling: black background, white text, hide subtext */
.varify-usp-bar-wrapper,
.varify-usp-bar {
  background-color: #000 !important;
  color: #fff !important;
}

.varify-usp-bar-headline {
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
}

.varify-usp-bar-text {
  display: none !important;
  /* Remove subheadline; only headlines remain */
}

.varify-usp-bar-icon svg {
  fill: #fff !important;
  stroke: #fff !important;
  width: 24px;
  height: 24px;
}

/* Zeigt den Mauszeiger als „Link-Hand“ über der gesamten Bar */
.varify-usp-bar-wrapper {
  cursor: pointer;
}

/* Stellt sicher, dass das Schließ-X sichtbar bleibt und nicht vom Icon‑Swap betroffen ist */
.varify-usp-bar-close {
  color: #ffffff !important;
  /* Weißes X auf schwarzem Hintergrund */
  cursor: default;
  /* Standard-Cursor, damit sich der Close‑Button vom klickbaren Rest unterscheidet */
}

@media (max-width: 767px) {
  .varify-usp-bar.varify-usp-bar--mobile-single {
    text-align: center;
  }

  /* Passe .varify-usp-bar-item an deine Spalten-Klasse an */
  .varify-usp-bar.varify-usp-bar--mobile-single .varify-usp-bar-item:not(:first-child) {
    display: none;
  }

  .varify-usp-bar-icon {
    width: 61px !important;
    height: 61px !important;
  }
}


    
/* Wrapper with your background */ .varify-code-block { background: #f5f2f0; border-radius: 8px; border: 1px solid #e0ddd9; padding: 0; position: relative; font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace; margin-bottom: 24px; } /* Code area */ .varify-code-block pre { margin: 0; padding: 16px 18px; overflow: auto; white-space: pre; } .varify-code-block code { color: #333; font-size: 13px; line-height: 1.55; display: block; } /* Copy button – fully neutralized, no more blue */ .varify-copy-btn { all: unset !important; /* removes ALL default/theme/elementor styles */ display: inline-block !important; position: absolute !important; top: 10px !important; right: 10px !important; padding: 6px 10px !important; border-radius: 6px !important; background: rgba(255,255,255,0.4) !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; border: 1px solid rgba(255,255,255,0.35) !important; color: #333 !important; font-size: 11px !important; font-weight: 600 !important; text-decoration: none !important; cursor: pointer !important; box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important; } /* Optional feedback after copy */ .varify-copy-btn.copied { background: rgba(80, 200, 120, 0.55) !important; color: #fff !important; } document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });

Black Friday Exit Intent - Bild

Exit Intent (Desktop)

Wenn ein Nutzer die Seite verlassen möchte, erscheint ein Popup mit einem Bild. Perfekt, um die Aufmerksamkeit noch einmal zu erregen, bevor der Nutzer die Seite verlässt.

Additional JavaScript



window.varify.helpers.onDomLoaded(() => {

  /* === YOUR SETTINGS === */
  const imgSrc = "https://images.varify.io/bb686c8cd78a3cad7c19b26d7df61c2b634f336481bd52130e1c1d570343f346/example_bf.jpg";
  const targetUrl = "https://example.com/black-friday";  // Link for the image
  const sessionKey = "varify_exit_popup_seen";           // Do not change
  /* ========================= */

  // Do not run in editor
  function isInEditor() {
    const p = new URLSearchParams(location.search);
    return p.has("varify-variation-name") || p.has("varify-variation-id");
  }
  if (isInEditor()) return;

  // Do not show more than once per session
  if (sessionStorage.getItem(sessionKey)) return;

  window.varify.helpers.waitFor('.varify-exitIntent-content', (contentDiv) => {

    const wrapper  = document.querySelector('.varify-exitIntent-wrapper');
    const backdrop = document.querySelector('.varify-exitIntent-backdrop');
    const modal    = document.querySelector('.varify-exitIntent');
    const closeBtn = document.querySelector('.varify-exitIntent-close');

    if (!wrapper || !backdrop || !modal || !closeBtn) return;

    // Replace content with image popup
    contentDiv.innerHTML = "";
    const link = document.createElement("a");
    link.href = targetUrl;
    link.target = "_blank";
    link.rel = "noopener noreferrer";

    const img = document.createElement("img");
    img.src = imgSrc;
    img.alt = "Black Friday Image";
    img.style.display = "block";
    img.style.width = "100%";
    img.style.height = "auto";

    link.appendChild(img);
    contentDiv.appendChild(link);

    // Exit intent trigger
    const exitHandler = (e) => {
      if (e.clientY  {
      if (!modal.contains(evt.target)) closePopup();
    });

    closeBtn.addEventListener("click", (e) => {
      e.preventDefault();
      closePopup();
    });

    document.addEventListener("keydown", (e) => {
      if (e.key === "Escape") closePopup();
    });

  });
});


    
/* Wrapper with your background */ .varify-code-block { background: #f5f2f0; border-radius: 8px; border: 1px solid #e0ddd9; padding: 0; position: relative; font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace; margin-bottom: 24px; } /* Code area */ .varify-code-block pre { margin: 0; padding: 16px 18px; overflow: auto; white-space: pre; } .varify-code-block code { color: #333; font-size: 13px; line-height: 1.55; display: block; } /* Copy button – fully neutralized, no more blue */ .varify-copy-btn { all: unset !important; /* removes ALL default/theme/elementor styles */ display: inline-block !important; position: absolute !important; top: 10px !important; right: 10px !important; padding: 6px 10px !important; border-radius: 6px !important; background: rgba(255,255,255,0.4) !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; border: 1px solid rgba(255,255,255,0.35) !important; color: #333 !important; font-size: 11px !important; font-weight: 600 !important; text-decoration: none !important; cursor: pointer !important; box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important; } /* Optional feedback after copy */ .varify-copy-btn.copied { background: rgba(80, 200, 120, 0.55) !important; color: #fff !important; } document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });
Additional CSS



/* Backdrop hidden by default */
.varify-exitIntent-backdrop {
  display: none !important;
  background-color: rgba(0, 0, 0, 0.8) !important;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  justify-content: center;
  align-items: center;
}

/* Show popup only when wrapper has vf-show */
.varify-exitIntent-wrapper.vf-show .varify-exitIntent-backdrop {
  display: flex !important;
}

/* Prevent scroll when popup is open */
.vf-no-scroll {
  overflow: hidden !important;
}

/* Content is just the image, so remove padding */
.varify-exitIntent-content {
  padding: 0 !important;
}

/* Modal background black */
.varify-exitIntent {
  background: #000 !important;
  border-radius: 8px !important;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.4);
  width: 540px;
  max-width: 90%;
  max-height: 90%;
  overflow: hidden;
  /* important so image never overflows */
  position: relative;
}

/* Close button always visible above image */
.varify-exitIntent-close {
  position: absolute;
  right: 8px;
  top: 8px;
  width: 28px;
  height: 28px;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 50%;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.varify-exitIntent-close-icon {
  width: 14px;
  height: 14px;
  color: #000 !important;
}

.varify-exitIntent-header {
  display: none !important;
}


    

/* Wrapper with your background */
.varify-code-block {
background: #f5f2f0;
border-radius: 8px;
border: 1px solid #e0ddd9;
padding: 0;
position: relative;
font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace;
margin-bottom: 24px;
}

/* Code area */
.varify-code-block pre {
margin: 0;
padding: 16px 18px;
overflow: auto;
white-space: pre;
}

.varify-code-block code {
color: #333;
font-size: 13px;
line-height: 1.55;
display: block;
}

/* Copy button – fully neutralized, no more blue */
.varify-copy-btn {
all: unset !important; /* removes ALL default/theme/elementor styles */

display: inline-block !important;
position: absolute !important;
top: 10px !important;
right: 10px !important;

padding: 6px 10px !important;
border-radius: 6px !important;

background: rgba(255,255,255,0.4) !important;
backdrop-filter: blur(12px) !important;
-webkit-backdrop-filter: blur(12px) !important;

border: 1px solid rgba(255,255,255,0.35) !important;

color: #333 !important;
font-size: 11px !important;
font-weight: 600 !important;
text-decoration: none !important;

cursor: pointer !important;
box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
}

/* Optional feedback after copy */
.varify-copy-btn.copied {
background: rgba(80, 200, 120, 0.55) !important;
color: #fff !important;
}

document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });

Black Friday Exit Intent - Content

Exit Intent (Desktop)

Dieses Popup erscheint, wenn der Nutzer die Seite verlassen möchte, und enthält Text, Bullet Points und einen Button. Du kannst den Inhalt ganz nach deinen Vorstellungen anpassen, um den Nutzer zurückzuholen.

Additional JavaScript


window.varify.helpers.onDomLoaded(() => {
  // ================================
  // CONFIG – YOU CAN EDIT THIS
  // ================================

  // Unique key for this popup. Change if you want a separate session logic.
  const POPUP_SESSION_KEY = 'varifyBFContentExitPopupSeen';

  // Popup texts
  const POPUP_HEADLINE = 'Black Friday Mega Deal!';
  const POPUP_SUBHEADLINE = 'Don\'t miss our biggest discounts';

  // Bullet points (each entry = one bullet line)
  const POPUP_BULLETS = [
    'Up to 50% off everything',
    'Free shipping on all orders',
    'Limited time offer'
  ];

  // CTA button
  const POPUP_CTA_URL = 'https://example.com/black-friday'; // landing page URL
  const POPUP_CTA_TEXT = 'Save Now →';                       // CTA label

  // Exit intent sensitivity (keep it simple: trigger when mouse leaves at top)
  const EXIT_TRIGGER_Y = 0;

  // ================================
  // RUNTIME LOGIC – DO NOT TOUCH :)
  // ================================

  // Do not run inside Varify editor
  function isInEditor() {
    const p = new URLSearchParams(location.search);
    return p.has('varify-variation-name') || p.has('varify-variation-id');
  }
  if (isInEditor()) return;

  // Do not show more than once per session
  if (sessionStorage.getItem(POPUP_SESSION_KEY) === '1') return;

  window.varify.helpers.waitFor('.varify-exitIntent-content', (contentDiv) => {
    const wrapper  = document.querySelector('.varify-exitIntent-wrapper');
    const backdrop = document.querySelector('.varify-exitIntent-backdrop');
    const modal    = document.querySelector('.varify-exitIntent');
    const closeBtn = document.querySelector('.varify-exitIntent-close');

    if (!wrapper || !backdrop || !modal || !closeBtn || !contentDiv) return;

    let popupOpened = false;

    // Ensure close button is inside modal so it overlays the content
    if (closeBtn.parentElement !== modal) {
      modal.appendChild(closeBtn);
    }

    // Build popup content (headline, subheadline, bullets, CTA)
    contentDiv.innerHTML = '';
    contentDiv.style.textAlign = 'left';

    const headline = document.createElement('p');
    headline.className = 'bf-exit-intent-headline';
    headline.textContent = POPUP_HEADLINE;

    const subheadline = document.createElement('p');
    subheadline.className = 'bf-exit-intent-subheadline';
    subheadline.textContent = POPUP_SUBHEADLINE;

    const ul = document.createElement('ul');
    ul.className = 'bf-exit-intent-bullets';

    POPUP_BULLETS.forEach((txt) => {
      const li = document.createElement('li');
      li.textContent = txt;
      ul.appendChild(li);
    });

    const cta = document.createElement('a');
    cta.className = 'bf-exit-intent-cta';
    cta.href = POPUP_CTA_URL;
    cta.target = '_blank';
    cta.rel = 'noopener noreferrer';
    cta.textContent = POPUP_CTA_TEXT;

    contentDiv.appendChild(headline);
    contentDiv.appendChild(subheadline);
    contentDiv.appendChild(ul);
    contentDiv.appendChild(cta);

    // Exit-intent trigger (simple: mouse leaves at top)
    const exitHandler = (e) => {
      if (popupOpened) return;
      // nur reagieren, wenn Maus oben rausgeht
      if (e.clientY > EXIT_TRIGGER_Y) return;

      openPopup();
      popupOpened = true;
      document.removeEventListener('mouseout', exitHandler);
    };

    document.addEventListener('mouseout', exitHandler);

    function openPopup() {
      sessionStorage.setItem(POPUP_SESSION_KEY, '1');
      wrapper.classList.add('vf-show');
      backdrop.style.display = '';
      document.documentElement.classList.add('vf-no-scroll');
      document.body.classList.add('vf-no-scroll');
    }

    function closePopup() {
      wrapper.classList.remove('vf-show');
      backdrop.style.display = 'none';
      document.documentElement.classList.remove('vf-no-scroll');
      document.body.classList.remove('vf-no-scroll');
    }

    // Outside click closes
    backdrop.addEventListener('click', (evt) => {
      if (!modal.contains(evt.target)) closePopup();
    });

    // X button closes
    closeBtn.addEventListener('click', (e) => {
      e.preventDefault();
      closePopup();
    });

    // ESC closes
    document.addEventListener('keydown', (e) => {
      if (e.key === 'Escape') closePopup();
    });
  });
});


    
/* Wrapper with your background */
.varify-code-block {
background: #f5f2f0;
border-radius: 8px;
border: 1px solid #e0ddd9;
padding: 0;
position: relative;
font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace;
margin-bottom: 24px;
}

/* Code area */
.varify-code-block pre {
margin: 0;
padding: 16px 18px;
overflow: auto;
white-space: pre;
}

.varify-code-block code {
color: #333;
font-size: 13px;
line-height: 1.55;
display: block;
}

/* Copy button – fully neutralized, no more blue */
.varify-copy-btn {
all: unset !important; /* removes ALL default/theme/elementor styles */

display: inline-block !important;
position: absolute !important;
top: 10px !important;
right: 10px !important;

padding: 6px 10px !important;
border-radius: 6px !important;

background: rgba(255,255,255,0.4) !important;
backdrop-filter: blur(12px) !important;
-webkit-backdrop-filter: blur(12px) !important;

border: 1px solid rgba(255,255,255,0.35) !important;

color: #333 !important;
font-size: 11px !important;
font-weight: 600 !important;
text-decoration: none !important;

cursor: pointer !important;
box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
}

/* Optional feedback after copy */
.varify-copy-btn.copied {
background: rgba(80, 200, 120, 0.55) !important;
color: #fff !important;
}
document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });

Additional CSS

/* ---------------------------------------------
   Backdrop hidden by default
   --------------------------------------------- */
.varify-exitIntent-backdrop {
  display: none !important;
  background-color: rgba(0, 0, 0, 0.8) !important;
  position: fixed !important;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  justify-content: center;
  align-items: center;
  z-index: 2147483646 !important;
}

/* ---------------------------------------------
   Show popup when wrapper has .vf-show
   --------------------------------------------- */
.varify-exitIntent-wrapper.vf-show .varify-exitIntent-backdrop {
  display: flex !important;
}

/* ---------------------------------------------
   Prevent page from scrolling while popup is open
   --------------------------------------------- */
.vf-no-scroll {
  overflow: hidden !important;
}

/* ---------------------------------------------
   Modal styling (for popup with content)
   --------------------------------------------- */
.varify-exitIntent {
  background-color: #000 !important;
  color: #fff !important;
  border-radius: 10px !important;
  box-shadow: 0 0 18px rgba(0, 0, 0, 0.6);
  width: 540px !important;
  max-width: 90% !important;
  max-height: 90% !important;
  overflow: visible !important;
  position: relative !important;
  padding: 0 !important;
  z-index: 2147483647 !important;
}

/* ---------------------------------------------
   Content Area
   --------------------------------------------- */
.varify-exitIntent-content {
  padding: 30px !important;
  text-align: left !important;
}

/* ---------------------------------------------
   Hide default unused header block
   --------------------------------------------- */
.varify-exitIntent-header {
  display: none !important;
}

/* ---------------------------------------------
   Close button (always visible above content)
   --------------------------------------------- */
.varify-exitIntent-close {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.9) !important;
  color: #000 !important;
  z-index: 2147483648 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  padding: 0 !important;
}

.varify-exitIntent-close-icon {
  width: 14px !important;
  height: 14px !important;
  color: #000 !important;
}

/* ---------------------------------------------
   Typography for content popup
   --------------------------------------------- */
.bf-exit-intent-headline {
  font-size: 22px !important;
  font-weight: 800 !important;
  margin: 0 0 10px !important;
  color: #fff !important;
}

.bf-exit-intent-subheadline {
  font-size: 18px !important;
  margin: 0 0 15px !important;
  color: #fff !important;
}

/* ---------------------------------------------
   Bullet list
   --------------------------------------------- */
.bf-exit-intent-bullets {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 20px !important;
}

.bf-exit-intent-bullets li {
  margin-bottom: 6px !important;
  padding-left: 20px !important;
  position: relative !important;
  color: #fff !important;
}

.bf-exit-intent-bullets li::before {
  content: "•" !important;
  color: #d32c2c !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
}

/* ---------------------------------------------
   CTA button
   --------------------------------------------- */
.bf-exit-intent-cta {
  display: inline-block !important;
  background-color: #d32c2c !important;
  color: #fff !important;
  padding: 10px 20px !important;
  border-radius: 4px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

.bf-exit-intent-cta:hover {
  background-color: #b71c1c !important;
}

/* ---------------------------------------------
   Responsive tweaks for very small viewports
   --------------------------------------------- */
@media only screen and (max-height: 700px) {
  .varify-exitIntent {
    max-height: 75% !important;
  }
}

@media only screen and (max-width: 380px) {
  .varify-exitIntent-content {
    padding: 20px !important;
  }

  .bf-exit-intent-headline {
    font-size: 19px !important;
  }

  .bf-exit-intent-subheadline {
    font-size: 16px !important;
  }
}

/* Wrapper with your background */
.varify-code-block {
background: #f5f2f0;
border-radius: 8px;
border: 1px solid #e0ddd9;
padding: 0;
position: relative;
font-family: Consolas, Menlo, Monaco, „Fira Code“, monospace;
margin-bottom: 24px;
}

/* Code area */
.varify-code-block pre {
margin: 0;
padding: 16px 18px;
overflow: auto;
white-space: pre;
}

.varify-code-block code {
color: #333;
font-size: 13px;
line-height: 1.55;
display: block;
}

/* Copy button – fully neutralized, no more blue */
.varify-copy-btn {
all: unset !important; /* kills ALL default/theme/Elementor styles */

display: inline-block !important;
position: absolute !important;
top: 10px !important;
right: 10px !important;

padding: 6px 10px !important;
border-radius: 6px !important;

background: rgba(255,255,255,0.4) !important;
backdrop-filter: blur(12px) !important;
-webkit-backdrop-filter: blur(12px) !important;

border: 1px solid rgba(255,255,255,0.35) !important;

color: #333 !important;
font-size: 11px !important;
font-weight: 600 !important;
text-decoration: none !important;

cursor: pointer !important;
box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
}

/* Optional feedback after copy */
.varify-copy-btn.copied {
background: rgba(80, 200, 120, 0.55) !important;
color: #fff !important;
}

document.addEventListener(„click“, function (e) { const btn = e.target.closest(„.varify-copy-btn“); if (!btn) return; const codeEl = btn.parentElement.querySelector(„code“); if (!codeEl) return; const code = codeEl.innerText; if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(code); } else { const ta = document.createElement(„textarea“); ta.value = code; document.body.appendChild(ta); ta.select(); document.execCommand(„copy“); ta.remove(); } btn.classList.add(„copied“); btn.textContent = „Copied!“; setTimeout(() => { btn.classList.remove(„copied“); btn.textContent = „Copy“; }, 1400); });

Das sagen unsere PRO Nutzer

Varify Pro Feature

Account & Success Manager​
Outlier Smoothing​
BigQuery Integration​
Experiment API​
Geotargeting​
Flexible payment options​
Custom DPA​
Custom CNAME​
Custom onboarding​
Export results​
Migration from Other Testing Tool​
Slack Support​
Digital Card Set​

Upgrade jetzt auf PRO und spare als Bestandskunde

Ein Klick genügt, um dein Upgrade zu starten und alle erweiterten Funktionen von Varify.io zu nutzen.