Javascript 防止事件与其他事件一起触发

Javascript 防止事件与其他事件一起触发,javascript,google-maps,Javascript,Google Maps,我有google.maps事件处理程序 google.maps.event.addListener('place_changed', function(){ ... }) 附加到输入(这也是自动完成)和附加到同一输入的另一个处理程序 input.addEventListener('change', function(){ ... }) 如何防止更改与位置更改一起触发?准确地说,如果地点改变了,就不要触发改变,反之亦然 我试过了 google.maps.event.addListener(

我有google.maps事件处理程序

google.maps.event.addListener('place_changed', function(){
  ...
})
附加到输入(这也是自动完成)和附加到同一输入的另一个处理程序

input.addEventListener('change', function(){
...
})
如何防止更改与位置更改一起触发?准确地说,如果地点改变了,就不要触发改变,反之亦然

我试过了

google.maps.event.addListener('place_changed', function(){
    input.addEventListener('change', function(){
       return 0;
    })

})

但是它没有帮助

所以我读到你想在触发事件b时不触发事件a吗

这很简单:

window.e_called = false;
function e1()
{
    window.e_called = true;
    // event 1 code...
}

function e2()
{
    window.setTimeout(function()
    {
        if(!window.e_called)
        {
             // event 2 code...
        }
        window.e_called = false;
    }, 1);
}

当然,您必须绑定
e1()
e2()
以及所有这些东西,但我希望您理解我的解决方案。

试试event.stopPropagation()