Skip Navigation

[Bug] Overwriting .innerHTML on body/outer-container

As seen here.

After document.body.innerHTML = "test"; can't access #perchance-error-indicator because it no longer exists. This is a silent error, not shown in the preview window. Presumably because #perchance-error-indicator no longer exists.

After document.getElementById("output-container").innerHTML = "test2"; errors trying to replace this script tag with another one or something?

I can see why these problems come up. But some checks and workarounds should be possible for these eventualities at least.

3
3 comments
  • In most cases, I don't think people would directly use the document.body (unless they are appending something to it) so this might be just for rare cases.

    Most of the time, they would be working with what they have added on the HTML panel, and not on the parent of it.

    • "Unless they are appending something to it" --that's exactly what I was doing 😅

      There's a lot in the system that assumes a certain way of using it. Which a) restricts people from using it in a wider variety of ways, b) frustrates people (such as myself) who really know what they're doing with things like JS, and c) results in edge-case errors like this that bug out the generator itself.

      I get that most creators on the platform don't really know what they're doing, and only go by what they're told they can do through the tutorials. That doesn't mean more advanced creators should be shrugged off because their problems (and the problems in the system they uncover) are "rare cases."

      If your comment was intended as "why this issue should be ignored"... honestly, I don't see how it's a relevant reason to just not care about bugs the system has. (If that was not the intention, I don't know what the intention was, why it was said.)

      Might be rare, but also a very easy fix to avoid the issue, as I said. Even if the in-page error reporting just stops working, at least the generator etc. will continue to function. I'd say that is preferable. And for the cost of adding a simple check, I'd say it's worth it.

      Up to @perchance whether they actually implement it or not, but I don't think this should be dismissed out of hand because it's a "rare case." I think it's still worth me raising to perchance as an issue.

      • I didn't intend the comment to mean that the 'this issue should be ignored' but just stating an observation on the generators that I've seen in Perchance (maybe I intended it unconsciously, so sorry), but I get what you mean that it is quite limiting not to be able to use the regular ways of accessing/manipulating the DOM.