zoukankan      html  css  js  c++  java
  • TypeError: BlobBuilder is not a constructor

    var BlobBuilder = window.BlobBuilder || window.MozBlobBuilder || window.WebKitBlobBuilder || window.MSBlobBuilder;
    var bb = new BlobBuilder();
    bb.append(arr.stString());

    今天在chrome浏览器中这样使用时,出线错误TypeError: BlobBuilder is not a constructor。

    解决:

    原文地址:http://stackoverflow.com/questions/15293694/blob-constructor-browser-compatibility

    0
    down vote
    accepted
    Got it working with your code. I only had to change some little detail:
    
    if(e.name == 'TypeError' && window.BlobBuilder){
            var bb = new BlobBuilder();
            bb.append(data);
            out = bb.getBlob(datatype);
            console.debug("case 2");
        }
    bb.append(data); // data must be with no brackets
    My function(constructor) that works now for all browsers:
    
    var NewBlob = function(data, datatype)
    {
        var out;
    
        try {
            out = new Blob([data], {type: datatype});
            console.debug("case 1");
        }
        catch (e) {
            window.BlobBuilder = window.BlobBuilder ||
                    window.WebKitBlobBuilder ||
                    window.MozBlobBuilder ||
                    window.MSBlobBuilder;
    
            if (e.name == 'TypeError' && window.BlobBuilder) {
                var bb = new BlobBuilder();
                bb.append(data);
                out = bb.getBlob(datatype);
                console.debug("case 2");
            }
            else if (e.name == "InvalidStateError") {
                // InvalidStateError (tested on FF13 WinXP)
                out = new Blob([data], {type: datatype});
                console.debug("case 3");
            }
            else {
                // We're screwed, blob constructor unsupported entirely   
                console.debug("Errore");
            }
        }
        return out;
    }
  • 相关阅读:
    java 环境变量配置
    框架分成介绍
    Net 新特性
    一 设计模式六大原则
    web api 配置
    Visual Studio检查内存泄露方法
    深度比较对象的不同
    reportview 安装使用
    Nuget 常用命令
    freeswitch学习笔记
  • 原文地址:https://www.cnblogs.com/ZhYQ-Note/p/5901433.html
Copyright © 2011-2022 走看看