diff options
Diffstat (limited to 'www/test/0.1.1/src/ext/remove-me.js')
-rw-r--r-- | www/test/0.1.1/src/ext/remove-me.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/www/test/0.1.1/src/ext/remove-me.js b/www/test/0.1.1/src/ext/remove-me.js new file mode 100644 index 00000000..49a24e5b --- /dev/null +++ b/www/test/0.1.1/src/ext/remove-me.js @@ -0,0 +1,27 @@ +(function(){ + function maybeRemoveMe(elt) { + var timing = elt.getAttribute("remove-me") || elt.getAttribute("data-remove-me"); + if (timing) { + setTimeout(function () { + elt.parentElement.removeChild(elt); + }, htmx.parseInterval(timing)); + } + } + + htmx.defineExtension('remove-me', { + onEvent: function (name, evt) { + if (name === "htmx:processedNode") { + var elt = evt.detail.elt; + if (elt.getAttribute) { + maybeRemoveMe(elt); + if (elt.querySelectorAll) { + var children = elt.querySelectorAll("[remove-me], [data-remove-me"); + for (var i = 0; i < children.length; i++) { + maybeRemoveMe(children[i]); + } + } + } + } + } + }); +})(); |