Category6
Category6

Reputation: 546

createObjectURL does not work in ie10

I am reading a base64 encoded file from indexedDB and trying to link to it as a blob url. The code below works fine in Chrome but when I click the link in ie10 nothing happens. I can see on the properties of the link that the href is blob:66A3E18D-BAD6-44A4-A35A-75B3469E392B which seems right. Anyone see what I'm doing wrong?

Download Attachment

           //convert the base64 encoded attachment string back into a binary array
            var binary = atob(attachment.data);
            var array = [];
            for(var i = 0; i < binary.length; i++) {
                array.push(binary.charCodeAt(i));
            }

            //create a blob from the binary array
            var myBlob=new Blob([new Uint8Array(array)], {type: attachment.content_type});

            //create a url hooked to the blob
            downloadURL = (window.webkitURL ? webkitURL : URL).createObjectURL(myBlob);

            //set the attachment link to the url
            $('#attachmentLink').attr("href", downloadURL);
            $("#attachmentLink").text(fileName);

Upvotes: 0

Views: 4813

Answers (1)

Category6
Category6

Reputation: 546

Figured it out. IE10 does not want to open a blob url in a new window, as my code above is trying to do. I could only make this work when I set the blob url as the src of an img tag to display my file, which luckily is an image anyway.

Upvotes: 1

Related Questions