Skip to content

Commit ab17f0c

Browse files
committed
damm it lady bug
1 parent ebd5d4a commit ab17f0c

2 files changed

Lines changed: 26 additions & 4 deletions

File tree

static/js/hero-carousel.js

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,19 @@
2626
var bgLayer1 = heroSection.querySelector('[data-hero-bg-layer="1"]');
2727
var bgLayer2 = heroSection.querySelector('[data-hero-bg-layer="2"]');
2828
var heroContent = heroSection.querySelector('[data-hero-content]');
29-
var heroTitle = heroSection.querySelector('[data-hero-title]');
30-
var heroDesc = heroSection.querySelector('[data-hero-desc]');
3129
var indicatorsContainer = heroSection.querySelector('[data-hero-indicators]');
3230
var prevBtn = heroSection.querySelector('[data-hero-prev]');
3331
var nextBtn = heroSection.querySelector('[data-hero-next]');
3432

35-
if (!bgLayer1 || !bgLayer2 || !heroContent || !heroTitle || !heroDesc || !indicatorsContainer) {
33+
function getHeroTitleEl() {
34+
return heroSection.querySelector('[data-hero-title]');
35+
}
36+
37+
function getHeroDescEl() {
38+
return heroSection.querySelector('[data-hero-desc]');
39+
}
40+
41+
if (!bgLayer1 || !bgLayer2 || !heroContent || !getHeroTitleEl() || !getHeroDescEl() || !indicatorsContainer) {
3642
return;
3743
}
3844

@@ -90,6 +96,8 @@
9096
});
9197

9298
function setHeroTitleText(text) {
99+
var heroTitle = getHeroTitleEl();
100+
if (!heroTitle) return;
93101
if (heroTitle.querySelector('.ladybug-h1-char')) {
94102
heroTitle.innerHTML = '';
95103
for (var i = 0; i < text.length; i++) {
@@ -119,7 +127,10 @@
119127

120128
function applySlideContent(slide) {
121129
setHeroTitleText(slide.title || '');
122-
heroDesc.textContent = slide.description || '';
130+
var heroDesc = getHeroDescEl();
131+
if (heroDesc) {
132+
heroDesc.textContent = slide.description || '';
133+
}
123134
}
124135

125136
function trackSlide() {
@@ -229,6 +240,16 @@
229240
});
230241
resetAutoplay();
231242
}
243+
244+
document.addEventListener('cfd:hero-title-dom-replaced', function () {
245+
if (heroSection.contains(getH1BiteTarget())) {
246+
applySlideContent(heroSlides[currentSlide]);
247+
}
248+
});
249+
250+
function getH1BiteTarget() {
251+
return document.getElementById('ladybug-h1-bite-target');
252+
}
232253
}
233254

234255
function boot() {

static/js/ladybug.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -295,6 +295,7 @@
295295
h1.innerHTML = '';
296296
h1.appendChild(out);
297297
h1.setAttribute('data-ladybug-wrapped', '1');
298+
document.dispatchEvent(new CustomEvent('cfd:hero-title-dom-replaced'));
298299
}
299300

300301
function restoreH1AndRewrap() {

0 commit comments

Comments
 (0)