TypeError: document.body.querySelector(…) is null in browser console
-
Getting this error in browser console when editing a post:
TypeError: document.body.querySelector(...) is null
.../wp-content/plugins/elementor/assets/js/checklist.min.js?ver=4.0.9:2This could be related to the Checklist ToggleIcon or similar.
Elementor 4.0.9 (and earlier), WordPress 6.9.4
-
Hi there,
Thanks for contacting us and hope you are doing well and having a great day.
To rule out the possibility of a plugin or theme conflict, please deactivate all your plugins not just elementor addons (besides Elementor). If it solves the issue reactivate them one by one to find the culprit. If it didn’t help, switch your theme (temporarily) to a default WP theme such as Twenty Nineteen and see if it makes any difference.
Also, this could happen due to our Elementor performance experiments you can try to deactivate them. To deactivate them you can go to Elementor > settings > features
Performance features currently in the experimental stage are:
Element Caching – Elements caching reduces loading times by serving up a copy of an element instead of rendering it fresh every time the page is loaded. When active, Elementor will determine which elements can benefit from static loading – but you can override this.
Inline Font Icons – This experiment renders icons as SVGs without loading the Font-Awesome and eicons libraries. Since SVGs are vector-based images which are rendered using the browser’s engine, they do not increase server requests which improves performanceI am looking forward to hearing back from you soon.
Kind regards,
Your suggestions did not help, error still occurs.
Looks like a missing result validation in your code when that element is not returned as expected.
Seems also others have the same or similar problem, please add a proper check there in next relase.
Your current code in toggle-icon.js:
document.body.querySelector( '[aria-label="Checklist"]' ).parentElement.style.display = shouldShow ...Browser DOM in our installation:

Note the aria label is translated to other languages in DOM.
Learnings:
- Use a class name or similar to find an element.
- Check if element is found before further use.
- Test your software also in localized environments.
Hi there,
Thanks for the feedback.
From what I can see, this problem has already been reported on our GitHub and our developers are currently working on it.
It seems the issue happens when the expected element is not returned, and there should definitely be a proper validation/check added for that case in one of the upcoming releases.
I appreciate you taking the time to report this. I’ll also personally upvote/escalate the internal developer report so the issue gets more visibility and priority.
From what I can see, this problem was initially reported at GitHub in October 2025, an own issue for it was opened in November 2025, your developers have set it to status/evaluating on 4th of December 2025, about half a year ago. All replies since then were different users who had the same problem, and nothing happened. Let’s hope, this very easy to track down issue will be finally fixed now, it took me 2 minutes to find the real reason…
HI there,
I completely understand your frustration, especially considering how long the issue has been open and the fact that the root cause appears relatively straightforward once identified.
Unfortunately, from the support side, we don’t have direct visibility into the internal development prioritization process or the technical complexity behind the final implementation and testing requirements. That said, I absolutely agree that the issue has been lingering for too long without a proper resolution.
I’ve added your findings and feedback to the internal report specifically highlighting the reproducibility and the apparent root cause you identified. Hopefully, this helps move the issue forward faster.
And thank you again for taking the time to investigate and share the details.
Kind regards,
You must be logged in to reply to this topic.