[whatwg] The iframe’s encoding only gets sniffed by Firefox - who is buggy?

Leif Halvard Silli xn--mlform-iua at xn--mlform-iua.no
Sun Mar 10 23:46:25 PDT 2013


Only Firefox sniffs the iframe doc of the following page as UTF-8:

   http://tinyurl.com/encodingmystery

   About that page:
1. It uses fallback encoding (Windows-1252).
2. The iframe doc is 100% document.write generated and
   contains the element <meta charset="UTF-8" />
3. The page contains a "mother script"[1] which triggers "ads
   rotation". The "mother script" e.g. causes the document.write
   script [2] to vary.
3. The iframe does not have any src attribute. Note therefore:
  a. In Firefox, the URL of the iframe doc is identical with the
     URL of the parent page (conclusion depends on the result of
     Ctrl-Click opening the iframe in another tab). 
  b. But in Safari etc, the URL of the iframe is 'about:blank'.

Firefox renders the iframe correctly no matter which ad rotation 
variant it sees. But in Safari, only 2 out of around 6 or more rotation 
variants renders correctly. Chrome behave like that as well. (I mention 
this because for iframe, only same-origin URL will allow iframe to 
inherit encoding from parent.)

Workaround found: On my own local network, by reducing the parent page 
to only the 'mother script',[1] plus adding charset="UTF-8" (<script 
charset="UTF-8" src="[1]"></script>) on the very script element that 
references that script, I was able to repair the problem in both 
Safari, Chrome and IE (but non in Opera/Presto). 

There is bug here, but I'm not sure whether the bug is in Firefox or 
the others. Why does Firefox work even without the @charset attribute 
on the <sript> - but not the others?

[1] http://tinyurl.com/motherscript
[2] http://tinyurl.com/DocumentWriteScriptOfThePage
-- 
leif halvard silli


More information about the whatwg mailing list