tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

cross-origin-subframe.html (927B)


      1 <!DOCTYPE html>
      2 
      3 <html>
      4 
      5 <head>
      6  <style>
      7    #target { background: green; }
      8  </style>
      9 </head>
     10 
     11 <body>
     12  <p>Cross-origin iframe</p>
     13  <div id="target"></div>
     14 
     15  <script>
     16    function messageHandler(msg) {
     17      if (msg.msgName === "setSize") {
     18        target.style.width = msg.width;
     19        target.style.height = msg.height;
     20      }
     21    }
     22 
     23    const observer = new ResizeObserver((entries) => {
     24      for (let entry of entries) {
     25        window.top.postMessage({
     26          msgName: "event",
     27          borderBoxBlockSize: entry.borderBoxSize[0].blockSize,
     28          borderBoxInlineSize: entry.borderBoxSize[0].inlineSize
     29        }, "*");
     30      }
     31    });
     32 
     33    window.addEventListener("load", () => {
     34      observer.observe(target);
     35      window.addEventListener("message", (event) => messageHandler(event.data));
     36 
     37      window.top.postMessage({ "msgName": "loaded" }, "*");
     38    }, { once: true });
     39  </script>
     40 </body>
     41 
     42 </html>