IMHO:
I think the problem is in different browsing context
. In W3C webStorage
specification there is a paragraph:
When a new Document is created in a browsing context which has a top-level browsing context, the user agent must check to see if that top-level browsing context has a session storage area for that document's origin
Document
in this quote means new page.
So it means if you open in new tab the same page it use the same browsing context
and the same sessionStorage, but if you open in new window (ie target="_blank") the browsing context
is different.
OR
The problem can be of separate CPU threads, so separate browsing context
and separate sessionStorage
s.