<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[I need Help. my shopping list is not clickable]]></title><description><![CDATA[<p dir="auto">so I’m not sure if this is the right area but, I built a module to create a real time editable shopping list. the core is there but I cannot click into the box to add an item. when I check the dev logs it shows no issues and when I exit dev logs it lets me type into the box, but I cannot add the item. once I click out the box I cannot click in it. I’m stumped and even resorted to AI for help with zero luck. what am I missing? any help would be greatly appreciated.</p>
<pre><code>Module.register("MMM-ShoppingList", {
    defaults: {
        initialItems: [] // Initial items in the shopping list
    },

    start: function() {
        console.log("Starting module: " + this.name);
        this.shoppingList = this.config.initialItems;
    },

    getStyles: function() {
        return ["MMM-ShoppingList.css"];
    },

    getDom: function() {
        var wrapper = document.createElement("div");
        wrapper.id = "shopping-list-container";

        var heading = document.createElement("h1");
        heading.innerText = "Shopping List";
        wrapper.appendChild(heading);

        var list = document.createElement("ul");
        list.id = "shopping-list";
        wrapper.appendChild(list);

        for (let item of this.shoppingList) {
            list.appendChild(this.createListItem(item));
        }

        var inputDiv = document.createElement("div");
        inputDiv.id = "add-item";

        var input = document.createElement("input");
        input.type = "text";
        input.id = "new-item";
        input.placeholder = "Add new item...";
        inputDiv.appendChild(input);

        var button = document.createElement("button");
        button.innerText = "Add";
        button.onclick = () =&gt; {
            alert("Button clicked");
            this.addItem(input.value);
            input.value = "";
        };
        inputDiv.appendChild(button);

        wrapper.appendChild(inputDiv);

        console.log('Returning wrapper with interactive elements');
        console.log('DOM:', wrapper);

        return wrapper;
    },

    createListItem: function(item) {
        var li = document.createElement("li");
        li.innerText = item;

        var deleteSpan = document.createElement("span");
        deleteSpan.className = "delete";
        deleteSpan.innerHTML = "&amp;#10060;";
        deleteSpan.onclick = () =&gt; {
            alert("Delete clicked");
            this.removeItem(item);
        };
        li.appendChild(deleteSpan);

        return li;
    },

    addItem: function(item) {
        if (item === "") return;
        console.log('Adding item:', item);
        this.shoppingList.push(item);
        this.renderShoppingList();
        console.log('Item added:', item);
    },

    removeItem: function(item) {
        console.log('Removing item:', item);
        this.shoppingList = this.shoppingList.filter(i =&gt; i !== item);
        this.renderShoppingList();
        console.log('Item removed:', item);
    },

    renderShoppingList: function() {
        var list = document.getElementById("shopping-list");
        if (list) {
            list.innerHTML = "";
            for (let item of this.shoppingList) {
                console.log('Rendering item:', item);
                list.appendChild(this.createListItem(item));
            }
            console.log('DOM updated with new list');
        } else {
            console.log('Error: Shopping list container not found');
        }
    },

    notificationReceived: function(notification, payload, sender) {
        console.log('Notification received:', notification);
        if (notification === "DOM_OBJECTS_CREATED") {
            console.log('DOM_OBJECTS_CREATED notification received');
            this.renderShoppingList();
        }
    }
});
</code></pre>
<p dir="auto">the Dev Log:</p>
<pre><code>Initializing MagicMirror².
translator.js:116 Loading core translation file: translations/en.json
VM4 sandbox_bundle:2 Electron Security Warning (Insecure Content-Security-Policy) This renderer process has either no Content Security
  Policy set or a policy with "unsafe-eval" enabled. This exposes users of
  this app to unnecessary security risks.

For more information and help, consult
https://electronjs.org/docs/tutorial/security.
This warning will not show up
once the app is packaged.
warnAboutInsecureCSP @ VM4 sandbox_bundle:2
translator.js:132 Loading core translation fallback file: translations/en.json
loader.js:178 Load script: modules/MMM-Cursor/MMM-Cursor.js
module.js:489 Module registered: MMM-Cursor
loader.js:151 Bootstrapping module: MMM-Cursor
loader.js:155 Scripts loaded for: MMM-Cursor
loader.js:194 Load stylesheet: modules/MMM-Cursor/MMM-Cursor.css
loader.js:158 Styles loaded for: MMM-Cursor
loader.js:161 Translations loaded for: MMM-Cursor
loader.js:178 Load script: modules/default/alert/alert.js
module.js:489 Module registered: alert
loader.js:151 Bootstrapping module: alert
loader.js:178 Load script: modules/default/alert/notificationFx.js
loader.js:155 Scripts loaded for: alert
loader.js:194 Load stylesheet: vendor/css/font-awesome.css
loader.js:194 Load stylesheet: modules/default/alert/./styles/notificationFx.css
loader.js:194 Load stylesheet: modules/default/alert/./styles/center.css
loader.js:158 Styles loaded for: alert
translator.js:99 alert - Load translation: translations/en.json
translator.js:99 alert - Load translation fallback: translations/bg.json
loader.js:161 Translations loaded for: alert
loader.js:178 Load script: modules/default/clock/clock.js
module.js:489 Module registered: clock
loader.js:151 Bootstrapping module: clock
loader.js:178 Load script: vendor/node_modules/moment/min/moment-with-locales.js
loader.js:178 Load script: vendor/node_modules/moment-timezone/builds/moment-timezone-with-data.js
loader.js:178 Load script: vendor/node_modules/suncalc/suncalc.js
loader.js:155 Scripts loaded for: clock
loader.js:194 Load stylesheet: modules/default/clock/clock_styles.css
loader.js:158 Styles loaded for: clock
loader.js:161 Translations loaded for: clock
loader.js:178 Load script: modules/MMM-WiFiPassword/MMM-WiFiPassword.js
module.js:489 Module registered: MMM-WiFiPassword
loader.js:151 Bootstrapping module: MMM-WiFiPassword
loader.js:178 Load script: modules/MMM-WiFiPassword/qrcode.min.js
loader.js:194 Load stylesheet: modules/MMM-WiFiPassword/MMM-WiFiPassword.css
loader.js:155 Scripts loaded for: MMM-WiFiPassword
loader.js:158 Styles loaded for: MMM-WiFiPassword
loader.js:161 Translations loaded for: MMM-WiFiPassword
loader.js:178 Load script: modules/MMM-ShoppingList/MMM-ShoppingList.js
module.js:489 Module registered: MMM-ShoppingList
loader.js:151 Bootstrapping module: MMM-ShoppingList
loader.js:155 Scripts loaded for: MMM-ShoppingList
loader.js:194 Load stylesheet: modules/MMM-ShoppingList/MMM-ShoppingList.css
loader.js:158 Styles loaded for: MMM-ShoppingList
loader.js:161 Translations loaded for: MMM-ShoppingList
loader.js:178 Load script: modules/default/weather/weather.js
module.js:489 Module registered: weather
loader.js:151 Bootstrapping module: weather
loader.js:254 File already loaded: moment.js
loader.js:178 Load script: modules/default/weather/weatherutils.js
loader.js:178 Load script: modules/default/weather/weatherobject.js
loader.js:178 Load script: modules/default/weather/providers/overrideWrapper.js
loader.js:178 Load script: modules/default/weather/weatherprovider.js
loader.js:254 File already loaded: suncalc.js
loader.js:178 Load script: modules/default/weather/providers/openmeteo.js
loader.js:155 Scripts loaded for: weather
loader.js:254 File already loaded: font-awesome.css
loader.js:194 Load stylesheet: vendor/node_modules/weathericons/css/weather-icons.css
loader.js:194 Load stylesheet: modules/default/weather/weather.css
loader.js:158 Styles loaded for: weather
loader.js:161 Translations loaded for: weather
loader.js:151 Bootstrapping module: weather
loader.js:254 File already loaded: moment.js
loader.js:254 File already loaded: weatherutils.js
loader.js:254 File already loaded: weatherobject.js
loader.js:254 File already loaded: modules/default/weather/providers/overrideWrapper.js
loader.js:254 File already loaded: weatherprovider.js
loader.js:254 File already loaded: suncalc.js
loader.js:254 File already loaded: modules/default/weather/providers/openmeteo.js
loader.js:155 Scripts loaded for: weather
loader.js:254 File already loaded: font-awesome.css
loader.js:254 File already loaded: weather-icons.css
loader.js:254 File already loaded: weather.css
loader.js:158 Styles loaded for: weather
loader.js:161 Translations loaded for: weather
loader.js:178 Load script: modules/MMM-DailyChoreGridColor/MMM-DailyChoreGridColor.js
module.js:489 Module registered: MMM-DailyChoreGridColor
loader.js:151 Bootstrapping module: MMM-DailyChoreGridColor
loader.js:155 Scripts loaded for: MMM-DailyChoreGridColor
loader.js:158 Styles loaded for: MMM-DailyChoreGridColor
loader.js:161 Translations loaded for: MMM-DailyChoreGridColor
loader.js:178 Load script: modules/MMM-Fireworks/MMM-Fireworks.js
module.js:489 Module registered: MMM-Fireworks
loader.js:151 Bootstrapping module: MMM-Fireworks
loader.js:178 Load script: https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.min.js
loader.js:155 Scripts loaded for: MMM-Fireworks
loader.js:158 Styles loaded for: MMM-Fireworks
loader.js:161 Translations loaded for: MMM-Fireworks
loader.js:194 Load stylesheet: css/custom.css
MMM-Cursor.js:24 Starting module: MMM-Cursor
alert.js:42 Starting module: alert
clock.js:43 Starting module: clock
MMM-ShoppingList.js:7 Starting module: MMM-ShoppingList
weatherprovider.js:28 Weather provider: Open-Meteo initialized.
weatherprovider.js:39 Weather provider: Open-Meteo started.
weatherprovider.js:28 Weather provider: Open-Meteo initialized.
weatherprovider.js:39 Weather provider: Open-Meteo started.
main.js:601 All modules started!
MMM-ShoppingList.js:103 Notification received: ALL_MODULES_STARTED
MMM-Fireworks.js:68 Notification received: ALL_MODULES_STARTED
MMM-ShoppingList.js:51 Returning wrapper with interactive elements
MMM-ShoppingList.js:52 DOM: &lt;div id=​"shopping-list-container"&gt;​&lt;h1&gt;​Shopping List​&lt;/h1&gt;​&lt;ul id=​"shopping-list"&gt;​&lt;li&gt;​flex"Milk"&lt;span class=​"delete"&gt;​❌​&lt;/span&gt;​&lt;/li&gt;​&lt;li&gt;​flex"Eggs"&lt;span class=​"delete"&gt;​❌​&lt;/span&gt;​&lt;/li&gt;​&lt;li&gt;​flex"Bread"&lt;span class=​"delete"&gt;​❌​&lt;/span&gt;​&lt;/li&gt;​&lt;/ul&gt;​&lt;div id=​"add-item"&gt;​&lt;input type=​"text" id=​"new-item" placeholder=​"Add new item..."&gt;​&lt;button&gt;​Add​&lt;/button&gt;​&lt;/div&gt;​&lt;/div&gt;​
MMM-ShoppingList.js:103 Notification received: MODULE_DOM_CREATED
MMM-Fireworks.js:68 Notification received: MODULE_DOM_CREATED
MMM-ShoppingList.js:103 Notification received: DOM_OBJECTS_CREATED
MMM-ShoppingList.js:105 DOM_OBJECTS_CREATED notification received
MMM-ShoppingList.js:93 Rendering item: Milk
MMM-ShoppingList.js:93 Rendering item: Eggs
MMM-ShoppingList.js:93 Rendering item: Bread
MMM-ShoppingList.js:96 DOM updated with new list
MMM-Fireworks.js:68 Notification received: DOM_OBJECTS_CREATED
weather.js:164 New weather information available.
MMM-ShoppingList.js:103 Notification received: CURRENTWEATHER_TYPE
MMM-Fireworks.js:68 Notification received: CURRENTWEATHER_TYPE
MMM-ShoppingList.js:103 Notification received: WEATHER_UPDATED
MMM-Fireworks.js:68 Notification received: WEATHER_UPDATED
weather.js:164 New weather information available.
MMM-ShoppingList.js:103 Notification received: WEATHER_UPDATED
MMM-Fireworks.js:68 Notification received: WEATHER_UPDATED
</code></pre>
]]></description><link>https://forum.magicmirror.builders/topic/19422/i-need-help.-my-shopping-list-is-not-clickable</link><generator>RSS for Node</generator><lastBuildDate>Mon, 15 Jun 2026 23:37:47 GMT</lastBuildDate><atom:link href="https://forum.magicmirror.builders/topic/19422.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 10 Feb 2025 16:52:08 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to I need Help. my shopping list is not clickable on Mon, 10 Feb 2025 20:23:54 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/sdetweil" aria-label="Profile: sdetweil">@<bdi>sdetweil</bdi></a> <a class="plugin-mentions-user plugin-mentions-a" href="/user/chrisfr1976" aria-label="Profile: chrisfr1976">@<bdi>chrisfr1976</bdi></a> you all are amazing. all i had to do was change the fireworks to fullscreen_below and now it all works. the text box is clickable and editable and the chores list sets off the fireworks and i see them. thank you both. i enjoy learning and doing all this.</p>
]]></description><link>https://forum.magicmirror.builders/post/123928</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/123928</guid><dc:creator><![CDATA[lucifer6669]]></dc:creator><pubDate>Mon, 10 Feb 2025 20:23:54 GMT</pubDate></item><item><title><![CDATA[Reply to I need Help. my shopping list is not clickable on Tue, 11 Feb 2025 18:48:32 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/lucifer6669" aria-label="Profile: lucifer6669">@<bdi>lucifer6669</bdi></a><br />
Hi,<br />
I’ve just fixed that issue in general. I’ve added <code>wrapper.style.pointerEvents = "none";</code> and <code>p.canvas.style.pointerEvents = "none";</code> in the module file. <strong>This allows pointer events to pass to modules underneath!</strong> So also the CalExt3 can be used again with the pop-up windows. I’m also very happy now :-)</p>
<p dir="auto">Cheers Chris!</p>
]]></description><link>https://forum.magicmirror.builders/post/123950</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/123950</guid><dc:creator><![CDATA[chrisfr1976]]></dc:creator><pubDate>Tue, 11 Feb 2025 18:48:32 GMT</pubDate></item><item><title><![CDATA[Reply to I need Help. my shopping list is not clickable on Mon, 10 Feb 2025 20:23:54 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/sdetweil" aria-label="Profile: sdetweil">@<bdi>sdetweil</bdi></a> <a class="plugin-mentions-user plugin-mentions-a" href="/user/chrisfr1976" aria-label="Profile: chrisfr1976">@<bdi>chrisfr1976</bdi></a> you all are amazing. all i had to do was change the fireworks to fullscreen_below and now it all works. the text box is clickable and editable and the chores list sets off the fireworks and i see them. thank you both. i enjoy learning and doing all this.</p>
]]></description><link>https://forum.magicmirror.builders/post/123928</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/123928</guid><dc:creator><![CDATA[lucifer6669]]></dc:creator><pubDate>Mon, 10 Feb 2025 20:23:54 GMT</pubDate></item><item><title><![CDATA[Reply to I need Help. my shopping list is not clickable on Mon, 10 Feb 2025 20:18:16 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/chrisfr1976" aria-label="Profile: chrisfr1976">@<bdi>chrisfr1976</bdi></a> thanks. i will try this. i have no issues with the fireworks module firing when my chore list is completed. but it may be interfering with the clickable chore list.</p>
]]></description><link>https://forum.magicmirror.builders/post/123930</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/123930</guid><dc:creator><![CDATA[lucifer6669]]></dc:creator><pubDate>Mon, 10 Feb 2025 20:18:16 GMT</pubDate></item><item><title><![CDATA[Reply to I need Help. my shopping list is not clickable on Mon, 10 Feb 2025 19:41:35 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/lucifer6669" aria-label="Profile: lucifer6669">@<bdi>lucifer6669</bdi></a> also, you should start w your module only while developing</p>
]]></description><link>https://forum.magicmirror.builders/post/123925</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/123925</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Mon, 10 Feb 2025 19:41:35 GMT</pubDate></item><item><title><![CDATA[Reply to I need Help. my shopping list is not clickable on Mon, 10 Feb 2025 19:26:03 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/chrisfr1976" aria-label="Profile: chrisfr1976">@<bdi>chrisfr1976</bdi></a> fullscreen_below</p>
]]></description><link>https://forum.magicmirror.builders/post/123923</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/123923</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Mon, 10 Feb 2025 19:26:03 GMT</pubDate></item><item><title><![CDATA[Reply to I need Help. my shopping list is not clickable on Mon, 10 Feb 2025 19:19:57 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/lucifer6669" aria-label="Profile: lucifer6669">@<bdi>lucifer6669</bdi></a> Hi,<br />
you’re running this:</p>
<pre><code>loader.js:178 Load script: modules/MMM-Fireworks/MMM-Fireworks.js
module.js:489 Module registered: MMM-Fireworks
loader.js:151 Bootstrapping module: MMM-Fireworks
</code></pre>
<p dir="auto">If is is configured in <code>fullscreen_above</code> you can’t see it but it is there.</p>
<p dir="auto">I think MMM-Fireworks it can be in <code>fullscreen_behind</code>. But you may need to check if you have a background image that the z-index is correct. You can try to add in the background image css a <code>z-index: -2;</code> and for Fireworks a <code>z-index: -1;</code>. Then start a test for Fireworks. If you can see it, it should be okay and you can click in your list. I’m not sure if this works. This is on my to-check-list :)</p>
]]></description><link>https://forum.magicmirror.builders/post/123921</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/123921</guid><dc:creator><![CDATA[chrisfr1976]]></dc:creator><pubDate>Mon, 10 Feb 2025 19:19:57 GMT</pubDate></item><item><title><![CDATA[Reply to I need Help. my shopping list is not clickable on Mon, 10 Feb 2025 17:54:12 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/sdetweil" aria-label="Profile: sdetweil">@<bdi>sdetweil</bdi></a> honestly at this point I have no idea what i’m doing. I have another module chore list that has clickable toggles and button and even activates fireworks once everything is marked done and it works perfectly fine</p>
]]></description><link>https://forum.magicmirror.builders/post/123918</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/123918</guid><dc:creator><![CDATA[lucifer6669]]></dc:creator><pubDate>Mon, 10 Feb 2025 17:54:12 GMT</pubDate></item><item><title><![CDATA[Reply to I need Help. my shopping list is not clickable on Mon, 10 Feb 2025 17:03:42 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/lucifer6669" aria-label="Profile: lucifer6669">@<bdi>lucifer6669</bdi></a> are spans clickable ?</p>
<p dir="auto">use the developers window, ctrl-shift-i<br />
sources tab<br />
find your code in left nav, then you can step thru the code as it happens</p>
]]></description><link>https://forum.magicmirror.builders/post/123917</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/123917</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Mon, 10 Feb 2025 17:03:42 GMT</pubDate></item></channel></rss>