我正在创建一个BLOB网址,并将此网址分配给iframe的位置。在Firefox和Chrome中,这没有问题,在IE10中,BLOB网址的内容不会显示在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);
知道什么是错的吗?
答案 0 :(得分: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
}
另一个提示是使用URL.createObjectURL(blob)
相对于window
:
var blobUrl = window.URL.createObjectURL(myBlob);
IE对此很明智!也许这有帮助!