Chiudere tendina su click esterno
Ciao a tutti,
sto creando una tendina su una pagina html per la selezione della lingua.
Questo è il codice che uso:
Codice HTML:
<html>
<head>
<style>
:root {
font: 8pt Arial;
}
#tendina {
display: inline-block;
width: 10em;
height: 2em;
background-color: yellow;
}
</style>
<script>
window.onload = function() {
document.getElementById('tendina').addEventListener('click', aprit());
window.addEventListener('click', chiudit());
}
function aprit() {
document.getElementById('scelte').style.display = 'block';
}
function chiudit() {
document.getElementById('scelte').style.display = 'none';
}
function sellingua(quale) {
console.log('Lingua selezionata: ' + quale);
}
</script>
</head>
<body>
<div id="tendina">Lingua: it</div>
<ul id="scelte">
<li onclick="sellingua('it')">it</li>
<li onclick="sellingua('en')">en</li>
</ul>
</body>
</html>
L'ho pubblicato anche su jsfiddle a questo indirizzo: https://jsfiddle.net/5pdyu655/
Ciò che voglio fare è che se l'utente clicca sul div giallo, si apre il menu lingue, altrimenti se clicco fuori dal menu e sta aperto, deve chiudersi.
Ovviamente il codice è molto rudimentale e non intendo usare jQuery.
Cos'è che non va?
Grazie