0

BLOB URL を作成し、この URL を iframe の場所に割り当てます。Firefox と Chrome では問題なく動作しますが、IE10 では BLOB の URL の内容が iframe に表示されません。IE10 デバッガーでは、BLOB URL が問題なく作成されていることがわかります。

var test =
{
   init: function()
   {
      var parts = ["<html><body>test</body></html>"];
      var myBlob = new Blob(parts, {"type":"text\html"}); 
      var blobUrl = URL.createObjectURL(myBlob);

      document.getElementById("test").contentWindow.location = blobUrl;
   }
}

window.addEventListener("DOMContentLoaded", test.init, true);

何が問題なのですか?

4

1 に答える 1

0

BlobBuilder と Blob コンストラクターごとに機能検出を使用してみてください。

if (typeof Blob !== "undefined") {
   // use the Blob constructor
} else if (window.MSBlobBuilder || window.WebKitBlobBuilder || window.MozBlobBuilder) {
   // use the supported vendor-prefixed BlobBuilder
} else {
   // neither Blob constructor nor BlobBuilder is supported
}

もう 1 つのヒントは、次のようにURL.createObjectURL(blob)相対的に使用することwindowです。

var blobUrl = window.URL.createObjectURL(myBlob);

IEはこれについて賢明です!多分これは助けになります!

于 2013-01-03T11:54:02.050 に答える