Javascript Safari中的聚合物组件调度事件

Javascript Safari中的聚合物组件调度事件,javascript,polymer,polymer-2.x,Javascript,Polymer,Polymer 2.x,我有一个定制的聚合物2+组件,如下所示: <my-button id="my-button"></my-button> 在Chrome中,这两个按钮都可以在下面实现该按钮的侦听器中捕获并记录: var myEl = document.getElementById('my-button') myEl.addEventListener('test', function(){ console.log('test reached'); }) myEl.addEvent

我有一个定制的聚合物2+组件,如下所示:

<my-button id="my-button"></my-button>
在Chrome中,这两个按钮都可以在下面实现该按钮的侦听器中捕获并记录:

var myEl = document.getElementById('my-button')

myEl.addEventListener('test', function(){
   console.log('test reached');
})

myEl.addEventListener('testCustom', function(ev){
   console.log('test custom reached');
})

然而,在macOS Sierra上的Safari 11中,它们不是。应该在Safari中得到支持,我在这里做了什么傻事吗?

好吧,我想出来了,但答案很奇怪。如果我更改此行:

var myEl = document.getElementById('my-button')

这在狩猎中会突然起作用。我没有解释为什么会出现命名冲突,因为
getElementById()
仍然可以选择元素

var myEl = document.getElementById('my-button')
var myEl = document.querySelector('my-button')