在触发之前检测事件的存在-JavaScript

在触发之前检测事件的存在-JavaScript,javascript,events,javascript-events,Javascript,Events,Javascript Events,我试图在元素后面触发事件。它工作得很好,但有一个问题:如果事件未绑定到目标元素,它会抛出一个错误 我有一个元素覆盖了整个页面。当event发生时,元素消失,javascript在其后面的元素上模拟event。相关代码: e.target.parentNode.removeChild(e.target); var ghost = document.elementFromPoint(e.pageX, e.pageY); ghost.dispatchEvent(e.type); 它工作得很好,除

我试图在元素后面触发事件。它工作得很好,但有一个问题:如果事件未绑定到目标元素,它会抛出一个错误

我有一个元素覆盖了整个页面。当
event
发生时,元素消失,javascript在其后面的元素上模拟
event
。相关代码:

e.target.parentNode.removeChild(e.target);  
var ghost = document.elementFromPoint(e.pageX, e.pageY);
ghost.dispatchEvent(e.type);
它工作得很好,除了如果
ghost
没有特定的事件绑定,它会抛出一个丑陋的
UNSPECIFIED\u event\u TYPE\u ERR:DOM Events异常0

是否有办法在ghost上检测事件是否绑定?请不要使用库。

接受事件对象,而不是字符串


还测试了如果span上没有事件侦听器,它不会抛出。

它实际上根本不应该工作,
。dispatchEvent
不需要string@Esailija好吧,那我怎么才能正确地触发那个事件呢?
document.querySelector("div").addEventListener("click", function(e) {
    var evt = document.createEvent('Event');
    evt.initEvent(e.type, true, true);
    document.querySelector("span").dispatchEvent(evt);
}, false);


document.querySelector("span").addEventListener("click", function(e){
   alert("via trigger"); 
});​