Jak klonować lub ponownie wysyłać zdarzenia DOM?
Szukam prostego i abstrakcyjnego sposobu klonowania lub ponownego wywoływania tylko zdarzeń DOM. Nie interesuje mnie klonowanie węzłów DOM.
Poeksperymentowałem trochę, przeczytajSpecyfikacja DOM Events i nie znalazłem jasnej odpowiedzi.
Idealnie szukam czegoś tak prostego jak:
handler = function(e){
document.getElementById("decoy").dispatchEvent(e)
}
document.getElementById("source").addEventListener("click", handler)
Ten przykład kodu oczywiście nie działa. Istnieje wyjątek DOM stwierdzający, że wydarzenie jest obecnie wysyłane - oczywiście.
Chciałbym uniknąć ręcznego tworzenia nowych zdarzeń za pomocądocument.createEvent()
, inicjowanie ich i wysyłanie ich.
Czy istnieje proste rozwiązanie tego przypadku?