That feels like the wrong way to do it, though I don't know what I'd suggest instead.
The first problem, which I suppose is efficiency rather than anything else, is that every time you check you load the whole page. It would be better to first find out whether anything has changed before you go through the rigmarole of replacing the page.
The other thing is that it's inherently a polling system, which means as well as constantly checking when nothing has changed, you don't find out immediately once something does.
I don't know whether any of the current approaches to a push notifications system work terribly well, but if any of them is available they'd be preferable. (I guess you could fall back to a polling system for unsupported clients.)