我有一些列表项,每个列表项旁边都有一个小框。单击该框后,会显示一些信息。如果单击位于框外,我想隐藏该框。但我不知道到底该怎么做。已经有一些类似于这个问题的帖子,但它们都使用 jQuery,但我必须使用纯 JavaScript 来完成此任务
我尝试执行以下操作:
http://jsfiddle.net/kn8hw4tf/1/
最佳答案
监听文档
上任意位置的点击,并对它们使用react。
监听框上的点击,并调用 event.stopPropagation()
,这样它们就不会点击 document
上的监听器。
document.getElementById('test_id').addEventListener('click', function getDetails(evt) {
var id = this.getAttribute('id');
alert("Clicked on " + id);
evt.stopPropagation();
});
document.addEventListener("click", function (e) {
alert("Clicked outside");
});
关于javascript - 使用 JavaScript 检测元素外部的点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26481675/