Religious Site
About This Attraction
The Tiger Cave Temple, or Wat Tham Sua, is a notable Buddhist site located near Krabi Town in Thailand. Known for its stunning views, the temple sits on top of a hill and requires visitors to climb 1,260 steps to reach the summit. The effort is rewarded with panoramic views of the surrounding landscape, making it a popular spot for travelers. For those interested in Tiger Cave Temple travel information, its important to note that appropriate attire is required due to the temples religious significance.
In addition to its breathtaking views, the temple grounds are home to several caves that house Buddhist monks and nuns. The name Tiger Cave comes from a rock formation resembling a tigers paw found within one of these caves. Visitors can also explore the lush forest area around the temple, which features ancient trees and various wildlife. Overall, Tiger Cave Temple provides a blend of cultural experience and natural beauty that appeals to many tourists.
Location Details
Address
Krabi Noi, Mueang Krabi District, Krabi 81000, Thailand
Visitor Information
Pricing & Ratings
Ticket Prices
Adult
Free
Child
Free
Student
Free
Senior
Free
Opening Hours & Booking
Open
Days
Daily
Hours
8:00 AM - 5:00 PM
Seasonality
Year-round
Booking
Booking Required?
No
Nearby Attractions
Iconic limestone hills with caves and mangrove forests.
Elephant camp offering rides and interactions in a natural setting.
Cultural and historical site in Krabi
Cultural center showcasing Andaman Sea heritage and local art.
A modern art museum showcasing contemporary Thai and international art.
A serene Buddhist temple with white exterior and intricate carvings.
Scenic viewpoint overlooking Krabi River and mangroves.
Vibrant market with local food, crafts, and live music.
Vibrant night market with food, crafts, and live music.
A scenic public park offering waterfront views, playgrounds, and walking paths.
";
}
// 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';
}
});
});
}
});