From 149ce945c040f4f5562f4f3cda7068b97a1e398a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sen=C3=A9n=20Rodero=20Rodr=C3=ADguez?= Date: Fri, 10 Jul 2020 18:12:04 +0200 Subject: [PATCH] Simplify initialization code for tags links By using an event delegation handler on document body there is no need to check if element was already initialized (idempotency) anymore. --- app/assets/javascripts/tags.js | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/app/assets/javascripts/tags.js b/app/assets/javascripts/tags.js index 312ec892e..5fd318aeb 100644 --- a/app/assets/javascripts/tags.js +++ b/app/assets/javascripts/tags.js @@ -4,21 +4,17 @@ initialize: function() { var $tag_input; $tag_input = $("input.js-tag-list"); - $("body .js-add-tag-link").each(function() { - if ($(this).data("initialized") !== "yes") { - $(this).on("click", function() { - var current_tags, name; - name = "\"" + ($(this).text()) + "\""; - current_tags = $tag_input.val().split(",").filter(Boolean); - if (current_tags.indexOf(name) >= 0) { - current_tags.splice(current_tags.indexOf(name), 1); - } else { - current_tags.push(name); - } - $tag_input.val(current_tags.join(",")); - return false; - }).data("initialized", "yes"); + $("body").on("click", ".js-add-tag-link", function() { + var current_tags, name; + name = "\"" + ($(this).text()) + "\""; + current_tags = $tag_input.val().split(",").filter(Boolean); + if (current_tags.indexOf(name) >= 0) { + current_tags.splice(current_tags.indexOf(name), 1); + } else { + current_tags.push(name); } + $tag_input.val(current_tags.join(",")); + return false; }); } };