My guess: you have multiple ids of propertyParagraph, but inside you have access to unique IDs as they come in. The getElementById() will return the first one it finds. I don't know how the shadow-roots or custom elements work, but suspect that this has something to do with the listeners only being attached to the first, but not the others.image showing what happens when you inspect elements in chrome on the full page, it shows at least two elements have an id of propertyParagraph therefore a non-unique ID look towards the top and bottom of the image to see it