National Park
About This Attraction
Mu Ko Lanta National Park is a renowned destination located in the southern part of Thailand, specifically on Koh Lanta Island. This park is known for its stunning landscapes, which include lush forests, pristine beaches, and vibrant marine life. Visitors can explore several islands within the parks boundaries, such as Ko Rok and Ko Haa, where snorkeling and diving are popular activities. With an area covering over 130 square kilometers, it offers ample space for hiking and wildlife spotting.
For those seeking Mu Ko Lanta National Park travel information, its important to note that the park is open year-round, although the best time to visit is during the dry season from November to April. Facilities at the park include visitor centers, camping areas, and guided tours to enhance your experience. The entrance fee helps maintain the parks facilities and conservation efforts. Remember to check local guidelines and regulations before planning your trip to ensure a safe and enjoyable visit.
Location Details
Address
Mu Ko Lanta National Park, Ko Lanta District, Krabi 81150, Thailand
Visitor Information
Pricing & Ratings
Ticket Prices
Adult
300 THB
Child
100 THB
Student
Not Available
Senior
Not Available
Opening Hours & Booking
Open
Days
Monday - Sunday
Hours
8:30 AM - 6:00 PM
Seasonality
All year round
Booking
Booking Required?
No
Nearby Attractions
Scenic lighthouse with panoramic views
Secluded beach with clear waters and scenic views.
Traditional sea gypsy village known for its unique culture.
Scenic national park with beaches, trails, and a lighthouse.
Secluded beach with clear waters and a relaxed atmosphere.
A picturesque bay known for its clear waters and serene beaches.
Secluded beach with clear waters and scenic views.
Lanta Old Town is a charming area located on the east coast of Koh Lanta,…
Learn More
A serene beach known for its tranquil atmosphere and stunning sunsets.
A natural cave with stalactites and stalagmites, accessible via guided tours.
";
}
// 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';
}
});
});
}
});