2016-03-14 12 views
5

Trình duyệt Safari cho windows (phiên bản 5.1) có hỗ trợ Blob không?Làm thế nào để sử dụng Blob trong safari 5.1

Mẫu mã sau trả về một lỗi trong giao diện điều khiển:

var array=[1,2]; 
var aBlob = new Blob(array); 

Lỗi:

"'[object BlobConstructor]' is not a constructor (evaluating 'new Blob(array)')"

Làm thế nào để khắc phục điều này, Nếu săn không hỗ trợ blob sau đó làm thế nào để thay thế này

+0

'Làm thế nào để khắc phục điều này, Nếu săn không hỗ trợ blob sau đó làm thế nào để thay thế this' tại sao mảng là không phải là một lựa chọn? tại sao bạn thậm chí cần blob? – llamerr

+1

['BlobBuilder API'] (https://developer.mozilla.org/en/docs/Web/API/Blob) – Rayon

+0

@RayonDabre Xin chào, Cảm ơn bạn đã gợi ý, là BlobBuilder hoạt động, Tài liệu nói rằng đó là không được chấp nhận. – Venkat

Trả lời

2

Không. Dựa trên https://developer.mozilla.org/en/docs/Web/API/Blob nó được hỗ trợ từ Safari 6.

EDIT: rõ ràng, MDN cho thấy cách để sử dụng mà không cần Blob constructor:

var builder = new BlobBuilder(); 
var fileParts = ['<a id="a"><b id="b">hey!</b></a>']; 
builder.append(fileParts[0]); 
var myBlob = builder.getBlob('text/xml'); 
+0

https://developer.mozilla.org/en-US/docs/Web/API/Blob/Blob Hỗ trợ cơ bản là 8. https://developer.mozilla.org/en/docs/Web/API/ Blob Hỗ trợ cơ bản là 6 cái nào là đúng – Venkat

+1

http://caniuse.com/#search=Blob giả sử ... Safari 8. Dù sao, bạn nên sử dụng BlobBuilder nếu bạn cần nó cho Safari. Safari 5 IS không được chấp nhận. – Lpu8er

2

Bạn có thể bao gồm các blob-polyfill trong trang của bạn và nó sẽ thêm Blob (và new Blob(array) hàm tạo) hỗ trợ cho các trình duyệt cũ hơn. Nó sẽ xây dựng Blobs bằng BlobBuilder khi có sẵn.

1

Như Blobs chỉ được hỗ trợ bởi Safari 6+ bạn có thể thử sử dụng thư viện bên ngoài như Blob.js

Blob.js implements the W3C Blob interface in browsers that do not natively support it.

Các vấn đề liên quan