Poszukuję prostego i abstrakcyjnego sposobu klonowania lub ponownego wysyłania zdarzeń DOM. Nie jestem zainteresowany klonowaniem węzłów DOM.Jak klonować lub ponownie wysyłać zdarzenia DOM?
Eksperymentowałem trochę, przeczytałem DOM Events specification i nie znalazłem jednoznacznej odpowiedzi.
Idealnie szukam czegoś tak prosta jak:
handler = function(e){
document.getElementById("decoy").dispatchEvent(e)
}
document.getElementById("source").addEventListener("click", handler)
Ten przykładowy kod, oczywiście, nie działa. Jest wyjątek DOM stwierdzający, że zdarzenie jest aktualnie wysyłane - oczywiście.
Chciałbym uniknąć ręcznego tworzenia nowych zdarzeń za pomocą document.createEvent()
, inicjując je i wysyłając.
Czy istnieje proste rozwiązanie tego przypadku użycia?
Dlaczego trzeba odesłaniu wydarzenia? – josh3736
Potrzebuję tego jako rozwiązania tymczasowego dla regionów CSS, które obecnie nie wysyłają zdarzeń węzła podrzędnego. Regiony renderują tylko zawartość węzła podrzędnego, nie działają jako węzły nadrzędne. –