<head></head>
<body>
<!-- dialog -->
<button onclick=dakai()></button>
<dialog id='dialog'>this is a dialog</dialog>
<script>
var dakai=function(){
var x=document.getElementById("dialog").open
console.log(x)
if(x){
document.getElementById("dialog").removeAttribute('open')
}else{
document.getElementById("dialog").setAttribute('open','open')
}
</script>
</body>
</html>
使用eventListener监听keydown事件,如果keycode为27,说明用户按下了esc键,执行关闭操作。
监听按钮click,如果被点击执行关闭操作。
以上两个操作可以共用一个关闭对话框的方法。
个人经验,仅供参考,如果有帮助请采纳,谢谢。