Invest 94-L could become tropical depression soon
Advertisement
Invest 94-L could become tropical depression soon
YASMINE IS WATCHING THE ROADS FOR YOUR COMMUTE, BUT WE START WITH SANDRA AND TRACKING THE TROPICS. ALL RIGHT, SO YOU CAN SEE HOW BUSY WE ARE. NOT ONLY DO WE HAVE A HURRICANE, THANKFULLY, GABRIELLE IS MOVING NEAR THE AZORES THIS MORNING TOWARDS SPAIN, BUT A NEW TROPICAL STORM, HUMBERTO, IS IN THE CENTRAL TROPICAL ATLANTIC. SO THIS TROPICAL STORM IS NOT NEAR THE CARIBBEAN. IT MAY NEAR THE US EASTERN SEABOARD NORTH OF THE CAROLINAS LATER ON INTO NEXT WEEK. 45 MILE AN HOUR WINDS. IT INCREASES INTO HURRICANE STRENGTH AND MAJOR HURRICANE STRENGTH AT THAT. ONCE WE HIT NEXT WEEK AND THEN MAKES THAT VEER UP PARALLELING THE US EASTERN SEABOARD, BUT NOT ANYWHERE NEAR FLORIDA, SO WE’RE NOT CONCERNED ABOUT IT. WE HAVE EYES ON THIS INVEST, WHICH IS NEAR THE DOMINICAN REPUBLIC AND PUERTO RICO. THIS MORNING WITH SOME RAINS. AGAIN, THIS ONE IS NOT NAMED YET. IT WILL LIKELY BECOME IMELDA MOVING OVER, OR AT LEAST CLOSE TO THE BAHAMAS. PERHAPS BY LATE WEEKEND. SO THIS IS SOMETHING WE’RE WATCHING CAREFULLY. WE’RE ON THE GOOD SIDE OF THE STORM THOUGH, SO NOT TOO CONCERNED, BUT WE’RE GOING TO SEE IMPACT DOWNPOURS WITH EXCESSIVE RAINFALL. AGAIN THIS AFTERNOON. FLOOD ADVISORY POTENTIAL IS UP. YOU SEE THE YELLOW IMPACT WEATHER ICON FOR THE WIDESPREAD STORM ACTION FIRING HER
Advertisement
WPBF 25 First Warning meteorologists are tracking Invest 94-L. According to the National Hurricane Center, it is producing a large area of disorganized showers, thunderstorms, and gusty winds across portions of the Dominican Republic, and the Turks and Caicos Islands. “An area of low pressure is expected to form along the wave tonight or early Friday when it moves near the southeast Bahamas. This low is expected to become a tropical depression when it is in the vicinity of the central and northwest Bahamas in a couple of days,” said NHC officials. “Interests along the coast of the southeastern United States should also monitor the progress of this system,” they added.It has a 90% chance of development over the next seven days.The WPBF 2025 Hurricane Season Forecast Preparing your emergency kit for hurricane seasonHurricane Preparedness Week: Understanding forecast informationGet the latest weather updates with the WPBF 25 News app. You can download it here.
WPBF 25 First Warning meteorologists are tracking Invest 94-L.
Advertisement
According to the National Hurricane Center, it is producing a large area of disorganized showers, thunderstorms, and gusty winds across portions of the Dominican Republic, and the Turks and Caicos Islands.
“An area of low pressure is expected to form along the wave tonight or early Friday when it moves near the southeast Bahamas. This low is expected to become a tropical depression when it is in the vicinity of the central and northwest Bahamas in a couple of days,” said NHC officials.
“Interests along the coast of the southeastern United States should also monitor the progress of this system,” they added.
It has a 90% chance of development over the next seven days.
Preparing your emergency kit for hurricane season
Hurricane Preparedness Week: Understanding forecast information
Get the latest weather updates with the WPBF 25 News app. You can download it here.
`;
}
function refreshWeatherIframe(containerId) {
var iframeId = ‘weather-iframe-‘ + containerId;
var iframe = document.getElementById(iframeId);
if (iframe && iframe.src) {
var originalSrc = iframe.src;
iframe.src = originalSrc + (originalSrc.indexOf(‘?’) > -1 ? ‘&’ : ‘?’) + ‘t=’ + Date.now();
}
}
function initializeWeatherBox(container) {
var containerId = container.getAttribute(‘data-container-id’);
function switchWeatherTab(tabName, clickedElement) {
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
tab.classList.remove(‘open’);
});
clickedElement.classList.add(‘open’);
container.querySelectorAll(‘[data-content-id]’).forEach(function(content) {
content.style.display = ‘none’;
});
var targetContent = container.querySelector(‘[data-content-id=”‘ + tabName + ‘”]’);
if (targetContent) {
targetContent.style.display = ‘block’;
}
}
function loadWeatherData() {
// If weather data is already being loaded, wait for it
if (window.weatherDataPromise) {
window.weatherDataPromise.then(function(data) {
if (data && data.data) {
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
}
});
return;
}
var location = { zip: window.DEFAULT_ZIPCODE };
try {
var storedLocations = localStorage.getItem(‘hrst.zip.history’);
if (storedLocations) {
var locations = JSON.parse(storedLocations);
if (locations && locations.length > 0) {
location = locations[0];
}
}
} catch (e) {}
var apiUrl = (window.DEWY_HOSTNAME || ”) + ‘/api/v1/weather/full/’ + location.zip;
if (window.fetch) {
window.weatherDataPromise = fetch(apiUrl)
.then(function(response) { return response.json(); })
.then(function(data) {
if (data && data.data) {
var article = container.closest(‘.article–wrapper’);
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
return data;
}
})
.catch(function(error) {
console.error(‘Error loading weather:’, error);
});
}
}
function updateWeatherAlertsBar(weatherData) {
var weatherWatchHeader = container.querySelector(‘.weather-watch-header’);
if (weatherWatchHeader && weatherData.alerts_count > 0) {
weatherWatchHeader.className = ‘weather-watch-header has-alerts’;
var weatherWatchText = weatherWatchHeader.querySelector(‘.weather-watch-text’);
var weatherWatchLink = weatherWatchHeader.querySelector(‘.weather-watch-link’);
if (weatherWatchText) {
weatherWatchText.textContent = `Weather Alerts (${weatherData.alerts_count})`;
}
if (weatherWatchLink) {
weatherWatchLink.href = ‘/alerts’;
}
}
}
function updateCurrentWeather(weatherData) {
if (weatherData.current) {
var tempEl = container.querySelector(‘.weather-grid–current-temp-value’);
if (tempEl) tempEl.textContent = weatherData.current.temp_f || ”;
var iconEl = container.querySelector(‘.weather-grid–current-icon’);
if (iconEl && weatherData.current.icon_name) {
iconEl.className = ‘weather-grid–current-icon weather-current-icon icon icon-weather-‘ + weatherData.current.icon_name;
}
var skyEl = container.querySelector(‘.weather-grid–sky’);
if (skyEl) skyEl.textContent = weatherData.current.sky || ”;
var feelsEl = container.querySelector(‘.weather-grid–feels’);
if (feelsEl) feelsEl.textContent = (weatherData.current.feels_like_f || weatherData.current.temp_f || ”) + ‘°F’;
}
}
function calculateVisibleItems(container, containerId) {
var isWeatherBoxV2 = containerId === ‘home-weather-v2’;
if (isWeatherBoxV2) {
return 6;
}
return 5;
}
function updateForecastTabs(weatherData) {
if (weatherData.hourly) {
var hourlyContainer = container.querySelector(‘.weather-hourly-forecast’);
if (hourlyContainer) {
var html = ”;
var visibleItems = calculateVisibleItems(hourlyContainer, containerId);
var maxHours = Math.min(visibleItems, weatherData.hourly.length);
for (var i = 0; i < maxHours; i++) {
var hour = weatherData.hourly[i];
html += generateForecastItem({
timeLabel: hour.hour_display,
iconName: hour.icon_name,
primaryTemp: hour.temp_f,
secondaryInfo: hour.precip_chance + ‘%’
});
}
hourlyContainer.innerHTML = html;
}
}
if (weatherData.daily) {
var dailyContainer = container.querySelector(‘.weather-daily-forecast’);
if (dailyContainer) {
var html = ”;
var visibleItems = calculateVisibleItems(dailyContainer, containerId);
var maxDays = Math.min(visibleItems, weatherData.daily.length);
for (var i = 0; i < maxDays; i++) {
var day = weatherData.daily[i];
var dayName = getShortDayName(day.day);
html += generateForecastItem({
timeLabel: dayName,
iconName: day.icon_name,
primaryTemp: day.high_f,
secondaryInfo: day.precip_chance + ‘%’
});
}
dailyContainer.innerHTML = html;
}
}
}
function getShortDayName(dayName) {
switch (dayName) {
case ‘Today’:
return ‘Today’;
case ‘Tomorrow’:
return ‘Tmrw’;
case ‘Sunday’:
return ‘Sun’;
case ‘Monday’:
return ‘Mon’;
case ‘Tuesday’:
return ‘Tue’;
case ‘Wednesday’:
return ‘Wed’;
case ‘Thursday’:
return ‘Thu’;
case ‘Friday’:
return ‘Fri’;
case ‘Saturday’:
return ‘Sat’;
default:
return dayName;
}
}
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
tab.onclick = function() {
switchWeatherTab(this.getAttribute(‘data-tab-id’), this);
return false;
};
});
loadWeatherData();
window.addEventListener(‘pageshow’, function(event) {
if (event.persisted) {
// Fix for weather radar iframe appearing gray after browser back/forward navigation
// When user navigates back, the page loads from browser cache but the iframe
// content doesn’t restore properly, showing a gray screen instead of the radar map
// This forces a fresh reload of the iframe by adding a timestamp parameter
setTimeout(function() {
refreshWeatherIframe(containerId);
}, 300);
}
});
}
document.querySelectorAll(‘.weather-sidebar’).forEach(function(weatherBox) {
initializeWeatherBox(weatherBox);
});
document.addEventListener(‘fullscreenchange’, function() {
var fullscreenElement = document.fullscreenElement;
if (!fullscreenElement) {
document.querySelector(‘.weather-box-container’).querySelectorAll(‘.fa-times’).forEach(function(icon) {
icon.classList.remove(‘fa-times’);
icon.classList.add(‘fa-expand’);
});
}
});
});
`;
}
function refreshWeatherIframe(containerId) {
var iframeId = ‘weather-iframe-‘ + containerId;
var iframe = document.getElementById(iframeId);
if (iframe && iframe.src) {
var originalSrc = iframe.src;
iframe.src = originalSrc + (originalSrc.indexOf(‘?’) > -1 ? ‘&’ : ‘?’) + ‘t=’ + Date.now();
}
}
function initializeWeatherBox(container) {
var containerId = container.getAttribute(‘data-container-id’);
function switchWeatherTab(tabName, clickedElement) {
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
tab.classList.remove(‘open’);
});
clickedElement.classList.add(‘open’);
container.querySelectorAll(‘[data-content-id]’).forEach(function(content) {
content.style.display = ‘none’;
});
var targetContent = container.querySelector(‘[data-content-id=”‘ + tabName + ‘”]’);
if (targetContent) {
targetContent.style.display = ‘block’;
}
}
function loadWeatherData() {
// If weather data is already being loaded, wait for it
if (window.weatherDataPromise) {
window.weatherDataPromise.then(function(data) {
if (data && data.data) {
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
}
});
return;
}
var location = { zip: window.DEFAULT_ZIPCODE };
try {
var storedLocations = localStorage.getItem(‘hrst.zip.history’);
if (storedLocations) {
var locations = JSON.parse(storedLocations);
if (locations && locations.length > 0) {
location = locations[0];
}
}
} catch (e) {}
var apiUrl = (window.DEWY_HOSTNAME || ”) + ‘/api/v1/weather/full/’ + location.zip;
if (window.fetch) {
window.weatherDataPromise = fetch(apiUrl)
.then(function(response) { return response.json(); })
.then(function(data) {
if (data && data.data) {
var article = container.closest(‘.article–wrapper’);
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
return data;
}
})
.catch(function(error) {
console.error(‘Error loading weather:’, error);
});
}
}
function updateWeatherAlertsBar(weatherData) {
var weatherWatchHeader = container.querySelector(‘.weather-watch-header’);
if (weatherWatchHeader && weatherData.alerts_count > 0) {
weatherWatchHeader.className = ‘weather-watch-header has-alerts’;
var weatherWatchText = weatherWatchHeader.querySelector(‘.weather-watch-text’);
var weatherWatchLink = weatherWatchHeader.querySelector(‘.weather-watch-link’);
if (weatherWatchText) {
weatherWatchText.textContent = `Weather Alerts (${weatherData.alerts_count})`;
}
if (weatherWatchLink) {
weatherWatchLink.href = ‘/alerts’;
}
}
}
function updateCurrentWeather(weatherData) {
if (weatherData.current) {
var tempEl = container.querySelector(‘.weather-grid–current-temp-value’);
if (tempEl) tempEl.textContent = weatherData.current.temp_f || ”;
var iconEl = container.querySelector(‘.weather-grid–current-icon’);
if (iconEl && weatherData.current.icon_name) {
iconEl.className = ‘weather-grid–current-icon weather-current-icon icon icon-weather-‘ + weatherData.current.icon_name;
}
var skyEl = container.querySelector(‘.weather-grid–sky’);
if (skyEl) skyEl.textContent = weatherData.current.sky || ”;
var feelsEl = container.querySelector(‘.weather-grid–feels’);
if (feelsEl) feelsEl.textContent = (weatherData.current.feels_like_f || weatherData.current.temp_f || ”) + ‘°F’;
}
}
function calculateVisibleItems(container, containerId) {
var isWeatherBoxV2 = containerId === ‘home-weather-v2’;
if (isWeatherBoxV2) {
return 6;
}
return 5;
}
function updateForecastTabs(weatherData) {
if (weatherData.hourly) {
var hourlyContainer = container.querySelector(‘.weather-hourly-forecast’);
if (hourlyContainer) {
var html = ”;
var visibleItems = calculateVisibleItems(hourlyContainer, containerId);
var maxHours = Math.min(visibleItems, weatherData.hourly.length);
for (var i = 0; i < maxHours; i++) {
var hour = weatherData.hourly[i];
html += generateForecastItem({
timeLabel: hour.hour_display,
iconName: hour.icon_name,
primaryTemp: hour.temp_f,
secondaryInfo: hour.precip_chance + ‘%’
});
}
hourlyContainer.innerHTML = html;
}
}
if (weatherData.daily) {
var dailyContainer = container.querySelector(‘.weather-daily-forecast’);
if (dailyContainer) {
var html = ”;
var visibleItems = calculateVisibleItems(dailyContainer, containerId);
var maxDays = Math.min(visibleItems, weatherData.daily.length);
for (var i = 0; i < maxDays; i++) {
var day = weatherData.daily[i];
var dayName = getShortDayName(day.day);
html += generateForecastItem({
timeLabel: dayName,
iconName: day.icon_name,
primaryTemp: day.high_f,
secondaryInfo: day.precip_chance + ‘%’
});
}
dailyContainer.innerHTML = html;
}
}
}
function getShortDayName(dayName) {
switch (dayName) {
case ‘Today’:
return ‘Today’;
case ‘Tomorrow’:
return ‘Tmrw’;
case ‘Sunday’:
return ‘Sun’;
case ‘Monday’:
return ‘Mon’;
case ‘Tuesday’:
return ‘Tue’;
case ‘Wednesday’:
return ‘Wed’;
case ‘Thursday’:
return ‘Thu’;
case ‘Friday’:
return ‘Fri’;
case ‘Saturday’:
return ‘Sat’;
default:
return dayName;
}
}
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
tab.onclick = function() {
switchWeatherTab(this.getAttribute(‘data-tab-id’), this);
return false;
};
});
loadWeatherData();
window.addEventListener(‘pageshow’, function(event) {
if (event.persisted) {
// Fix for weather radar iframe appearing gray after browser back/forward navigation
// When user navigates back, the page loads from browser cache but the iframe
// content doesn’t restore properly, showing a gray screen instead of the radar map
// This forces a fresh reload of the iframe by adding a timestamp parameter
setTimeout(function() {
refreshWeatherIframe(containerId);
}, 300);
}
});
}
document.querySelectorAll(‘.weather-sidebar’).forEach(function(weatherBox) {
initializeWeatherBox(weatherBox);
});
document.addEventListener(‘fullscreenchange’, function() {
var fullscreenElement = document.fullscreenElement;
if (!fullscreenElement) {
document.querySelector(‘.weather-box-container’).querySelectorAll(‘.fa-times’).forEach(function(icon) {
icon.classList.remove(‘fa-times’);
icon.classList.add(‘fa-expand’);
});
}
});
});
Loading more articles…