фарш, вероятно, требует зависимости, которые описаны в package.json и требуют установки npm install? Чтобы подтянулся в наш-фарш чесночок, там, морковочка, лучок.
не точно, но вроде приложения на мобилке регистрируют под себя префиксы URL, по которым телефон начинает предлагать такой выбор. Например, моб. клиент ВК и ссылки *.vk.com
покажите пример разметки. Откуда берутся id кнопок, что их невозможно соотнести с товарами? Как идентифицируются товары — неужели только по названию? – может, ещё у них есть какой-то артикул?
Николай, объясните на пальцах. Вы хотите сайт, куда зайти, там окошко для текста, вы вставляете свой какой-то код, жмёте кнопку и в окошке же появляется текст, размноженный и с подстановкой увеличивающегося счётчика. Вы это текст-код копируете и дальше где-то используете у себя. Так?
Вероятнее, тормозит эффект размытия (blur). Попробуйте отключить его — станет шустрее?
Ну и вряд ли нужен супер-длинный хвост — ограничьте, может, макс. число кругов: появление новых удаляет старые.
Или можно сделать какое-то прореживание старых – чем дальше от начала, тем вероятнее удаление очередного круга в пользу новых.
Пройти по массиву и сосчитать, какой элемент сколько раз встречается. Без этого никак.
Затем оставить только те, у которых счётчик === n и показать элементы.
Пробовали сами написать?
сделайте рабочий jsFiddle, демонстрирующий проблему. Там можно делать запросы к URL типа /echo/json/ для эмуляции AJAX.
Попробуйте использовать стрелочную функцию, для сохранения this.
Зачем XMLHttpRequest когда есть fetch()