J'ai une div principale et la div sous qui est également appelée forme parce que la forme est enveloppée à l'intérieur de div. Je veux est de fermer le formulaire quand on clique à l'extérieur de la div principale, mais ça ne se passe pas du tout. S'il vous plaît, aidez-moi à résoudre ce problème.Event.target ne fonctionne pas lorsque vous cliquez à l'extérieur de la div pour le fermer
var btn = document.getElementById('opener');
var box = document.getElementById('abc');
var form = document.getElementById('def');
btn.onclick = function(){
\t box.style.display = "block";
}
//Doesn't work. It's function is to close the form when click outside of the div.
window.onclick = function(event){
\t if(event.target == box){
\t form.style.display = "none";
}
}
#abc{
display: none;
background-color: #F44336;
}
\t <button id = "opener">
Open
</button>
<div id = "abc">
\t \t <!-- Login Authentication -->
\t \t <div id = "def">
\t \t \t <div>
\t \t \t \t <p>Welcome</p>
\t \t \t </div>
\t \t \t <br />
\t \t \t <div class = "login-auth" id = "cool">
\t \t \t \t \t <form method="POST">
\t \t <label>Email or Username:</label>
\t \t <input type = "text">
\t \t <br />
\t \t <label>Password:</label>
\t \t <input type = "password">
\t \t <br /><br />
\t \t <input type="submit" value="Login">
\t </form>
\t \t \t </div>
\t \t </div>
\t </div>
jsFiddle Lien ici: https://jsfiddle.net/twrvpp3d/
Si vous mettez simplement 'console.log (event.target)' dans le gestionnaire de clic, vous verriez le problème. – Barmar
Jetez un coup d'oeil -> https://jsfiddle.net/twrvpp3d/9/ – UncaughtTypeError
Merci @UncaughtTypeError pour la réponse. Mais le problème est déjà résolu: D – Sanjay