我需要检查元素(#idname)是否存在,然后在关闭当前选项卡(或浏览器)之前向用户发送消息。

这是我的情况:

if (document.contains(document.getElementById("#idname"))) {
    window.onbeforeunload = function(evt) {
      // some code here
}


上面的代码也可以正常工作,但是我的问题是HTML中首先不存在元素(#idname),在页面加载后我会将其附加到HTML中。现在,该条件不再起作用。有什么解决办法吗?

最佳答案

您可以简单地检查onbeforeunload处理程序中元素的存在:

window.onbeforeunload = function(evt) {
   if ( document.getElementById("idname") ) {
      // ...
   }
}

08-19 16:13