| <html> |
| <head> |
| <script> |
| function handleStorageEvent(e) |
| { |
| parent.log("Subframe received storage event:"); |
| parent.log("Key - " + e.key); |
| parent.log("New Value - " + e.newValue); |
| parent.log("Old Value - " + e.oldValue); |
| parent.log("url - " + parent.normalizeURL(e.url)); |
| parent.log("Storage Area - " + ((e.storageArea == window.localStorage) ? "This window's window.localStorage" : "Another window's window.localStorage")); |
| parent.log(""); |
| |
| if (e.key != "Subframe") { |
| parent.log("Subframe about to change localStorage..."); |
| localStorage.setItem("Subframe", "SET"); |
| } |
| } |
| </script> |
| </head> |
| <body onload="window.addEventListener('storage', handleStorageEvent, false);"> |
| This is the subframe which exists to make sure that both frames of a same security origin receive the event for that origin's localStorage object mutating |
| </body> |
| </html> |