`; } else { vimeoIframeHtml = 'Vimeo: No "wcag" parameter found in the URL.'; } // --- Generate YouTube Iframe HTML --- if (youtubeVideoId) { const youtubeEmbedUrl = `https://www.youtube.com/embed/${youtubeVideoId}?rel=0`; youtubeIframeHtml = ` `; } else { youtubeIframeHtml = 'YouTube: No "yt" parameter found in the URL.'; } // --- Conditional Hiding for #wcag-buttons --- const wcagButtons = document.getElementById('wcag-buttons'); if (wcagButtons) { if (!vimeoVideoId || vimeoVideoId.trim() === '') { wcagButtons.style.display = 'none'; } } // --- 2. DEFINE & INITIALIZE CONTAINER CONTENTS --- const videoContainers = [ { id: 'standard', buttonId: 'tab-button-1', content: youtubeIframeHtml }, { id: 'accesible', buttonId: 'tab-button-2', content: vimeoIframeHtml } ]; // 3. Set the initial HTML content for both tabs and set display state videoContainers.forEach(item => { const containerElement = document.getElementById(item.id); if (containerElement) { containerElement.innerHTML = item.content; if (item.id !== 'standard') { containerElement.style.display = 'none'; } } }); // --- 4. TAB SWITCHING LOGIC --- function switchTab(activeId) { videoContainers.forEach(item => { const container = document.getElementById(item.id); const button = document.getElementById(item.buttonId); if (!container || !button) return; if (item.id === activeId) { // ACTIVE tab: Restore content (iframe), show container, and ADD active class container.innerHTML = item.content; container.style.display = 'block'; button.classList.add('active-tab'); } else { // INACTIVE tab: Clear content (stops video), hide container, and REMOVE active class container.innerHTML = ''; container.style.display = 'none'; button.classList.remove('active-tab'); } }); } // --- 5. ATTACH EVENT LISTENERS & INITIAL STATE --- videoContainers.forEach(item => { const button = document.getElementById(item.buttonId); if (button) { button.addEventListener('click', () => switchTab(item.id)); } }); // Initial state: Show the YouTube tab on page load switchTab('standard'); }); Skip to main content
Placer.ai Webinars
Webinar
Tuesday, March 9, 2021
12 PM EST

Cities and Suburbs: New Opportunities and Challenges

In partnership with
Watch the Recording

In this webinar, leverage Placer.ai's new migration analysis tools and other location analytics to break down the changing distribution between cities and suburbs.

We dive into the potential impact on the wider retail landscape while also breaking down the potential effects on commercial, office, and residential real estate.

Speakers
Ethan Chernofsky
Ethan Chernofsky
SVP Marketing
Placer.ai
Joshua Nachowitz
Joshua Nachowitz
SVP Research, Research & Economic Development
Downtown Alliance NYC
Jordan Breck
Jordan Breck
President & Partner
MRP Capital Group
Watch the Recording

By submitting this form you are providing your personal information to both Placer.ai and which will be subject to each company’s respective privacy policies.

Why am I being asked to fill out a form?
By completing this form you are agreeing to us collecting your data so that we can have someone contact you for the purpose of setting up a demo and adding you to Placer’s marketing records. You may opt-out at any time.