91³Ô¹ÏÍø

Watch CBS News

Thanksgiving travel surge hits DFW as FAA issues ground delay due to staffing

DFW Airport saw one of its busiest Thanksgiving travel days on Tuesday, with smooth operations early on before the FAA issued an afternoon ground delay due to staffing shortages. The slowdown came as more than 328,000 Texans prepared to fly for the holiday.  

"I'm excited about seeing my cousins," said Lola Amoia, who was traveling with her mom and brother to Las Vegas. "We don't get to see them a lot; we see them only like twice a year, and so this is kind of just like a tradition we do every year."

The FAA expects to see more than 52,000 flights nationwide on Tuesday, with hundreds of them departing from DFW airport, a large share being operated by DFW-based American Airlines, which says it has 25,000 crew members ready for the hectic week.

"We have built our schedule back up and it's something that our team has been really focused on this holiday season, making sure we're delivering for our customers, especially here in DFW," said Jim Moses, an American Airlines senior vice president.

Airport officials anticipate at least 3 million travelers moving through DFW over the holiday period, with Sunday projected to be its busiest day.

"I used Uber, which is very convenient for me, they came pretty quickly, and I'm here early, so I have no complaints about that," said Martin Mills, who is traveling to Raleigh to see his daughter.

Rob Himler, senior manager of construction communications at DFW Airport, urged travelers to utilize alternative methods of transportation to get to the airport, like rideshares or public transit like DART to avoid issues like traffic, parking and construction.

"So, construction is still underway," said Himler. "We are in a historic era right now with our airport. We are building new terminals, renovating terminals, redoing roadways, so adding that extra time into your plan is very, very important."

DFW is advising travelers to add an additional 60 to 90 minutes to travel plans. It is also advising people to download the DFW mobile app to get the updates on gates, delays. Etc. Hoping these tools give families the time they need to navigate the busy days ahead.

"Keep your cool, and be prepared… definitely be prepared," said Luca Amoia.

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=296763317a51cab90faa73f1bb146d5c'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });