JavaScript失去焦点
我有一个JavaScript失去焦点,javascript,Javascript,我有一个div,它使用onclick()JS事件处理程序设置为display:inline。当我单击页面上除现在可见的div之外的任何其他位置时,如何使div返回到显示:none 我在谷歌上搜索了blur,并将焦点设置为另一个元素,但我不知道如何实际操作。你可以创建一个覆盖整个窗口区域的绝对div,方法是给它100%的宽度和高度,然后再给它一次单击以显示:无你的div。你的div的z索引应该大于绝对值div如果您想使用,它很容易: 使用all*selector时,上述操作会变得相当缓慢,因此我建
div
,它使用onclick()
JS事件处理程序设置为display:inline
。当我单击页面上除现在可见的div之外的任何其他位置时,如何使div
返回到显示:none
我在谷歌上搜索了
blur
,并将焦点设置为另一个元素,但我不知道如何实际操作。你可以创建一个覆盖整个窗口区域的绝对div,方法是给它100%的宽度和高度,然后再给它一次单击以显示:无你的div。你的div的z索引应该大于绝对值div如果您想使用,它很容易:
使用all*selector时,上述操作会变得相当缓慢,因此我建议您使用
示例:
$('#div_id').bind('clickoutside', function(){
$(this).css('display', 'none');
});
可以找到原始js示例。使用此示例的html是什么样子的?每当点击页面上的任何位置时,事件都会触发一些文本。我真的不想使用jQuery,但我没有指定这样你就赢了。@Roboju:那么我希望你能很快在vanilla javascript中找到解决方案:)
$('#div_id').bind('clickoutside', function(){
$(this).css('display', 'none');
});
document.onclick = function(e) {
if (!e) var e = window.event;
if (e.target.id == 'the_id_of_your_div') {
// Do something
} else {
// Do something else
}
}