Spaces:
Running
Running
File size: 1,923 Bytes
ac3ffc0 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
async function convertCurrency() {
const amount = document.getElementById('amount').value;
const fromCurrency = document.getElementById('from-currency').value;
const toCurrency = document.getElementById('to-currency').value;
const result = document.getElementById('result');
const convertBtn = document.getElementById('convert-btn');
if (amount && fromCurrency && toCurrency) {
try {
const response = await fetch(`https://api.exchangerate-api.com/v4/latest/${fromCurrency}`);
const data = await response.json();
const rate = data.rates[toCurrency];
const convertedAmount = (amount * rate).toFixed(2);
// Display conversion result
result.innerHTML = `${amount} ${fromCurrency} = ${convertedAmount} ${toCurrency}`;
// Hide convert button after conversion
convertBtn.style.display = 'none';
} catch (error) {
result.innerText = "Error fetching exchange rates!";
}
}
}
function swapCurrencies() {
const fromCurrency = document.getElementById('from-currency');
const toCurrency = document.getElementById('to-currency');
// Swap currency values
const temp = fromCurrency.value;
fromCurrency.value = toCurrency.value;
toCurrency.value = temp;
// Automatically convert after swap
convertCurrency();
}
// Event listeners for input and currency change
document.getElementById('amount').addEventListener('input', convertCurrency);
document.getElementById('from-currency').addEventListener('change', () => {
document.getElementById('convert-btn').style.display = 'block';
document.getElementById('result').innerHTML = '';
});
document.getElementById('to-currency').addEventListener('change', () => {
document.getElementById('convert-btn').style.display = 'block';
document.getElementById('result').innerHTML = '';
});
|