`classList.toggle()` 2nd arg doesn't work in IE11
Months and months ago I faced a situation where I had to remove an element's class outside of the react render tree.
Because toggle
was being used to add the class in the code previously I used to toggle
to remove it, and to ensure that it was removed and not added I used the second argument which would force it to be removed.
Today I learned that the second argument does not work in IE11.
In general, using toggle
is an anti-pattern because it's non deterministic, it depends on state that is unavailable to you when writing the code.
There are methods add
and remove
for classList, they have some IE11 edges too, but are more explicit about their intention.
See more info here.
Tweet