Funicular
About This Attraction
The Ascensor Artillería is one of the iconic funiculars in Valparaíso, Chile, offering panoramic views of the city and its bay. This historic lift connects Plaza Aduana at the base with the Artillería hill, where visitors can find the Naval Museum. The ride is not only a practical way to navigate the steep hills but also a chance to enjoy stunning vistas of Valparaísos unique landscape.
For those planning a visit, its important to check the Ascensor Artillería opening hours, which can vary throughout the year. The funicular is an affordable and efficient way to reach attractions on Artillería hill. Its operation provides an essential service for both locals and tourists looking to explore this vibrant area.
Location Details
Address
Artillería 108, Valparaíso, Chile
Visitor Information
Pricing & Ratings
Ticket Prices
Adult
CLP 300
Child
CLP 100
Student
CLP 100
Senior
CLP 100
Opening Hours & Booking
Open
Days
Monday to Sunday
Hours
7:00 AM to 11:00 PM
Seasonality
Year-round
Booking
Booking Required?
No
Nearby Attractions
Cerro Alegre in Valparaíso, Chile, is a picturesque neighborhood known for its colorful houses and…
Learn More
La Sebastiana is a museum located in Valparaíso, Chile, that was once the home of…
Learn More
Nahuel Huapi National Park, located in Bariloche, Argentina, is the oldest national park in the…
Learn More
Circuito Chico is a popular tourist route near San Carlos de Bariloche, Argentina, offering stunning…
Learn More
Cerro Catedral, located in San Carlos de Bariloche, Argentina, is one of the most popular…
Learn More
Cafayate is a renowned wine-producing region in Argentina, situated in the Calchaquí Valley, known for…
Learn More
The Museo de la Vid y el Vino in Cafayate, Argentina, is an engaging destination…
Learn More
Quebrada de las Conchas is a stunning natural reserve located near Cafayate in Argentinas Salta…
Learn More
Palermo is a prominent neighborhood in Buenos Aires, known for its expansive parks and vibrant…
Learn More
Recoleta Cemetery in Buenos Aires is one of the citys most famous landmarks, known for…
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';
}
});
});
}
});