13th
Wed
IE7のinnerHTMLに関する仕様変更
This article was migrated from http://rai
IE7でJuggernaut
その結果、IE7では、script、embed、objectなどの特定のDOMエレメントに対して、innerHTMLに値を設定しようとするとエラーになるようです。
1 document.createElement('script').innerHTML = 'alert(1)'; // エラー!
いまのところ、以下のように別なDOMエレメントのinnerHTMLにHTMLとして 埋め込む分には大丈夫なようです。
1 var span = document.createElement('span'); 2 span.innerHTML = '<script type="text/javas cript">alert(1)</script>'; 3 document.body.appendChil d(span);
どんな意図があっての仕様変更なんだろう?
<a id="BlogEntryE xtend"></a>
<span id="extended-t ext" /><p>
ともあれ、IE7に対応するようにJuggernaut
1 ---- code of public/javascripts/juggern aut.js ---- 2 3 _appendIEC ommandHand ler: function() { 4 var scriptbox = document.createElem ent('div'); 5 scriptbox. style.display = 'none'; 6 scriptbox. innerHTML = [ 7 '<script language="VBScript">', 8 ' on error resume next', 9 ' Sub juggernaut _flash_FSC ommand(ByVal command, ByVal args)', 10 ' call myFlash_Do FSCommand(command, args)', 11 ' end sub', 12 '</script>'].join("\n"); 13 document.body.appendChil d(scriptbox); 14 }, 15 16 _appendFla shObject: function() { 17 var host = Juggernaut .host; 18 var port = Juggernaut .port; 19 var data = Juggernaut .data; 20 var flashbox = document.createElem ent('div'); 21 flashbox.style.display = 'none'; 22 flashbox.innerHTML = [ 23 '<object classid="clsid:D27C DB6E-AE6D- 11cf-96B8- 4445535400 00" ', 24 'codebase="http://dow nload.macr omedia.com /pub/shock wave/cabs/ ', 25 'flash/swfl ash.cab#version=5,0,0,0" id="juggernaut _flash">', 26 '<param name="movie" value="/juggernau t.swf?host=', host, 27 '&port=', port, '&juggernaut _data=', data, '">', 28 '<param name="quality" value="high">', 29 '<embed src="/juggernau t.swf?host=', host, '&port=', port, 30 '&juggernaut _data=', data + '" quality="high" ', 31 'name="juggernaut _flash" swLiveConn ect="true" ', 32 'type="applicatio n/x-shockw ave-flash" ', 33 'pluginspag e="http://www .macromedi a.com/go/g etflashpla yer">', 34 '</embed>'].join(''); 35 document.body.appendChil d(flashbox); 36 },
作者のAlex氏にはパッチを送っておきました。
This article was migrated from http://rai
posted by
genki
on Wed 13 Sep 2006
at 20:26