Historical Museum
About This Attraction
Dubai Museum is a popular attraction located in the historic Al Fahidi Fort, which dates back to 1787, making it the oldest existing building in Dubai. The museum offers visitors a glimpse into the regions past with exhibits on traditional life, including pearl diving and desert life. Interactive displays and life-sized dioramas help illustrate the cultural and historical evolution of the city. Key features include displays of artifacts from archaeological sites and a section dedicated to the development of Dubai over the decades.
Visitors should note that Dubai Museum opening hours are typically from 8:30 AM to 8:30 PM on Saturdays to Thursdays, and from 2:30 PM to 8:30 PM on Fridays. Ticket prices are affordable, making it an accessible destination for people interested in learning more about the history of Dubai. Conveniently located in the heart of the city, its easy to reach by public transport or taxi. The museum provides an educational experience suitable for all ages, offering valuable insights into Dubais transformation from a modest fishing village to a global metropolis.
Location Details
Address
Al Fahidi Fort, Al Fahidi Street, Bur Dubai, Dubai, UAE
Visitor Information
Pricing & Ratings
Ticket Prices
Adult
3 AED
Child
1 AED
Student
2 AED
Senior
2 AED
Opening Hours & Booking
Open
Days
Saturday to Thursday
Hours
8:30 AM to 8:30 PM
Seasonality
Closed on Fridays
Booking
Booking Required?
Yes
Advance Booking
2-3 days days recommended
Book Your Visit
*Prices may vary. Check official website for the most up-to-date information.
Nearby Attractions
Dubai Creek is a natural seawater inlet that divides the city into two main sections,…
Learn More
Dubai Mall is one of the largest shopping centers in the world, located in the…
Learn More
The Burj Khalifa in Dubai is the tallest building in the world, standing at a…
Learn More
The Dubai Fountain is a captivating attraction located at the base of the Burj Khalifa,…
Learn More
Jumeirah Beach in Dubai is a popular destination for both tourists and locals, known for…
Learn More
The Burj Al Arab in Dubai is an iconic hotel renowned for its distinctive sail-shaped…
Learn More
Global Village in Dubai is a unique cultural and entertainment destination that brings together cultures…
Learn More
Palm Jumeirah is a man-made island in Dubai, known for its distinctive palm tree shape.…
Learn More
Dubai Marina is a modern area in Dubai known for its impressive skyline and waterfront…
Learn More
Ferrari World Abu Dhabi is an indoor amusement park located on Yas Island in the…
Learn More
";
}
// Initialize modal controls
const initModalControls = function() {
console.log('Initializing modal controls');
const modal = document.getElementById('attraction-modal');
const closeBtn = document.querySelector('.attraction-modal-close');
if (closeBtn) {
closeBtn.addEventListener('click', function() {
modal.style.display = 'none';
document.body.style.overflow = '';
});
}
window.addEventListener('click', function(event) {
if (event.target === modal) {
modal.style.display = 'none';
document.body.style.overflow = '';
}
});
// Make attraction cards clickable
const attractionCards = document.querySelectorAll('.attraction-card');
console.log('Found ' + attractionCards.length + ' attraction cards');
attractionCards.forEach(card => {
card.addEventListener('click', function(e) {
openModalWithCardData(this);
});
});
};
// Function to open modal with card data
const openModalWithCardData = function(card) {
// Get data from hidden div
const data = card.querySelector('.attraction-full-data');
if (!data) {
console.error('No attraction data found in card');
return;
}
const modal = document.getElementById('attraction-modal');
if (!modal) {
console.error('Modal element still not found after creation attempt');
return;
}
// Helper function to safely get element text
function getElementText(selector) {
const element = data.querySelector(selector);
return element ? element.textContent : '';
}
try {
// Basic Info
document.getElementById('attraction-modal-title').textContent = getElementText('.attraction-name');
document.getElementById('attraction-modal-type').textContent = getElementText('.attraction-type-full');
document.getElementById('attraction-modal-description').textContent = getElementText('.attraction-description-full');
// Reset all containers to hidden
['attraction-modal-hours-container', 'attraction-modal-price-container',
'attraction-modal-address-container', 'attraction-modal-image-container'].forEach(id => {
const container = document.getElementById(id);
if (container) container.style.display = 'none';
});
// Rating
const ratingText = getElementText('.attraction-rating-full');
if (ratingText) {
const ratingValue = parseFloat(ratingText);
if (!isNaN(ratingValue)) {
const ratingValueEl = document.getElementById('attraction-modal-rating-value');
const ratingFillEl = document.getElementById('attraction-modal-rating-fill');
if (ratingValueEl) ratingValueEl.textContent = ratingValue.toFixed(1) + '/10';
if (ratingFillEl) ratingFillEl.style.width = (ratingValue * 10) + '%';
}
}
// Show the modal
modal.style.display = 'block';
document.body.style.overflow = 'hidden'; // Prevent background scrolling
console.log('Modal opened successfully');
} catch (error) {
console.error('Error opening modal:', error);
}
};
// Try to create the modal
const created = createModal();
console.log('Modal created:', created);
// If not created (already exists), initialize the controls
if (!created) {
initModalControls();
}
// Also initialize distance toggle
const distanceToggle = document.getElementById('distance-unit-toggle');
if (distanceToggle) {
distanceToggle.addEventListener('change', function() {
const showKm = this.checked;
// Update toggle labels
const labels = document.querySelectorAll('.toggle-label');
if (labels.length >= 2) {
labels[0].style.opacity = showKm ? '0.5' : '1';
labels[1].style.opacity = showKm ? '1' : '0.5';
}
// Update all distance displays
document.querySelectorAll('.nearby-attraction-card').forEach(card => {
const kmEl = card.querySelector('.distance-km');
const miEl = card.querySelector('.distance-mi');
if (kmEl && miEl) {
kmEl.style.display = showKm ? 'inline' : 'none';
miEl.style.display = showKm ? 'none' : 'inline';
}
});
});
}
});