Skip to content

Comment on Kid Pix as a JavaScript Appparent

Comments

What do these 2 lines do?

    canvas.width = canvas.width;
    canvas.height = canvas.height;
Workaround for some weird DOM issue?

Setting `canvas.width` clears the canvas and resets all canvas state (stroke styles, transformations, etc...)

As far as I know, setting `canvas.height` is unnecessary.

Also as far as I know, using `ctx.clearRect` is faster, though it's possible the author wants to reset that other canvas state as well (which `clearRect` won't do), or it's possible there's some older browser incompatibility I don't know about that the author wants to avoid.

Edit: it looks like the author is also calling `clearRect`? Maybe there's some browser behavior I don't know about, but as far as I think this code is unnecessary. You don't need to do both things.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.