[whatwg] clarification for data-uris in window.open and SOP
Andreas Göbel
andreas.goebel at typeofnan.com
Tue Feb 8 13:38:52 PST 2011
Recently I needed to have some base64 encoded images to show in a new window. My first attempt was, to just pass the data:image/png;base64,<data> string as first argument from window.open().
This works in all browsers that support data-uris, but it is terribly slowing down the browser when passing in images with a "big" filesize. My idea was to do something like this:
var largeprev = window.open('data:text/html;charset=utf-8,' + escape('<div/>'), 'large'),
that = this;
largeprev.addEventListener('DOMContentLoaded', function(e) {
largeprev.alert('loaded');
largeprev.document.querySelectorAll('div')[0].appendChild(that);
}, false);
this works great in Firefox (3.6.x), but Chrome and Safari treat the returned DOMWindow object like it represents a foreign domain. Technically, it is not the same domain obviously since I'm passing in a data:text/html data-uri, but I would be shocked if the Same Origin Policy would deny an attempt like this ?
What should be the correct behavior for this ?
--Andy
More information about the whatwg
mailing list