The process of page navigation looks something like this:
So there is a point in time when your widget first initializes that it can see both pages. You should be able to target just the new page by locality – something like jquery’s closest() function targeting something like the mx-page class.
because it is in a dataview with a singple object, and all objects should have an ID (right?)
would it be possible to save the ID in your widget, and then on reload, check if the ID is the same, if not, rebuild the nav?
no idea, if widgets have access to object IDs ? someone here should know :D