diff --git a/src/ext/sse.js b/src/ext/sse.js index 473f23dac..28c4dd32a 100644 --- a/src/ext/sse.js +++ b/src/ext/sse.js @@ -37,10 +37,11 @@ This extension adds support for Server Sent Events to htmx. See /www/extensions */ onEvent: function(name, evt) { + var parent = evt.target || evt.detail.elt; switch (name) { case "htmx:beforeCleanupElement": - var internalData = api.getInternalData(evt.target) + var internalData = api.getInternalData(parent) // Try to remove remove an EventSource when elements are removed if (internalData.sseEventSource) { internalData.sseEventSource.close(); @@ -50,7 +51,7 @@ This extension adds support for Server Sent Events to htmx. See /www/extensions // Try to create EventSources when elements are processed case "htmx:afterProcessNode": - ensureEventSourceOnElement(evt.target); + ensureEventSourceOnElement(parent); } } }); diff --git a/src/ext/ws.js b/src/ext/ws.js index 05be1eca0..c1e29620b 100644 --- a/src/ext/ws.js +++ b/src/ext/ws.js @@ -38,13 +38,14 @@ This extension adds support for WebSockets to htmx. See /www/extensions/ws.md f * @param {Event} evt */ onEvent: function (name, evt) { + var parent = evt.target || evt.detail.elt; switch (name) { // Try to close the socket when elements are removed case "htmx:beforeCleanupElement": - var internalData = api.getInternalData(evt.target) + var internalData = api.getInternalData(parent) if (internalData.webSocket) { internalData.webSocket.close(); @@ -53,8 +54,6 @@ This extension adds support for WebSockets to htmx. See /www/extensions/ws.md f // Try to create websockets when elements are processed case "htmx:beforeProcessNode": - var parent = evt.target; - forEach(queryAttributeOnThisOrChildren(parent, "ws-connect"), function (child) { ensureWebSocket(child) });