title: sessionStorage changes aren't firing 'storage' event
body: <p>I was following <a href="https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API/Using_the_Web_Storage_API" rel="nofollow noreferrer">this here</a> to see if I could enable updates on all open webpages of my site if someone has multiple tabs open.</p>
  <p>Basically, I set the listener and check to see if the <code>cart</code> key was changed</p>
  <pre><code>window.addEventListener('storage', function(e) {
    if (e.key === &quot;cart&quot;) {
      console.log(`cart changed: ${e.newValue}`);
    }
  });
  </code></pre>
  <p>When I change <code>localStorage.cart</code> from another tab on the same website, the event fires just fine in the first tab:</p>
  <pre><code>setInterval(function(){
      localStorage.cart = &quot;localStorage 1&quot;;
      setTimeout(function(){
          localStorage.cart = &quot;localStorage 2&quot;;
      },2000);
  },4000);
  </code></pre>
  <p>But when I use <code>sessionStorage</code> instead of <code>localStorage</code> it doesn't:</p>
  <pre><code>setInterval(function(){
      sessionStorage.cart = &quot;sessionStorage 1&quot;;
      setTimeout(function(){
          sessionStorage.cart = &quot;sessionStorage 2&quot;;
      },2000);
  },4000);
  </code></pre>
  <p>Does the <code>storage</code> event only fire for <code>localStorage</code> and not <code>sessionStorage</code>?</p>
  <p>Tested on chrome only.</p>