- From: Maciej Stachowiak <mjs@apple.com>
- Date: Fri, 01 May 2015 15:07:27 -0700
- To: Anne van Kesteren <annevk@annevk.nl>
- Cc: WebApps WG <public-webapps@w3.org>
> On May 1, 2015, at 9:47 AM, Anne van Kesteren <annevk@annevk.nl> wrote: > > On Thu, Apr 23, 2015 at 8:58 PM, Maciej Stachowiak <mjs@apple.com> wrote: >> I wrote up a proposal (with input and advice from Ryosuke Niwa) on a >> possible way to extend Web Components to support fully isolated components: >> >> https://github.com/w3c/webcomponents/wiki/Isolated-Imports-Proposal >> >> I welcome comments on whether this approach makes sense. > > I don't get the bit where you create a node in one global, but run its > constructor in another. It’s already possible to run a constructor from another global object in the non-cross-origin case. Simple example below (it uses a built-in type as the example, but it could work just as easily with a custom defined prototype-based constructor or ES6 class constructor). <iframe id="frame"> </iframe> <script> function doIt() { window.ForeignArray = document.getElementById("frame").contentWindow.Array; var localArray = new Array(); var weirdArray = new ForeignArray(); alert(weirdArray.__proto__ == localArray.__proto__); } window.addEventListener("load", doIt); </script> My proposal suggest something similar, except everything is wrapped with translating proxies at the origin boundary. I think it may be necessary to do an experimental implementation to work out all the details of how the two-way isolation works. > That seems rather Frankenstein-esque. Would > love to see more details overall, as the direction this is going in > certainly seems like the kind of thing we want. Allowing a dozen > Facebook Like buttons to appear on a page using only one additional > global. Yes, that’s the goal. Regards, Maciej
Received on Friday, 1 May 2015 22:47:36 UTC