הנה הודעה לכל מעריצי BlobBuilder – להתראות.
BlobBuilder
הוא API שימושי ליצירת Blobs (או קבצים) ב-JavaScript. השירות הסתיים מאז Chrome 8 , FF 6 ו-IE 10 אבל מעולם לא נשלח ב-Safari, וסביר להניח שלעולם לא יישלח. שינויי מפרט שבוצעו לאחרונה ב-File API כוללים constructor חדש של Blob
, שבעצם הופך את BlobBuilder
ללא רלוונטי. למעשה, כבר השבתת את האפשרות בלילה ב-Safari ו-Chrome יתחיל להזהיר אותך בקרוב במסוף.
לשם השוואה, הקוד הבא הוא אותו קוד שמשתמש ב-BlobBuilder
שהוצא משימוש וב-constructor החדש של Blob
. קטע הקוד יוצר גיליון סגנונות ומצרף אותו ל-DOM.
BlobBuilder()
:
window.BlobBuilder = window.BlobBuilder || window.WebKitBlobBuilder ||
window.MozBlobBuilder || window.MSBlobBuilder;
window.URL = window.URL || window.webkitURL;
var bb = new BlobBuilder();
bb.append('body { color: red; }');
var blob = bb.getBlob('text/css');
var link = document.createElement('link');
link.rel = 'stylesheet';
link.href = window.URL.createObjectURL(blob);
document.body.appendChild(link);
Blob()
:
window.URL = window.URL || window.webkitURL;
var blob = new Blob(['body { color: red; }'], {type: 'text/css'});
var link = document.createElement('link');
link.rel = 'stylesheet';
link.href = window.URL.createObjectURL(blob);
document.body.appendChild(link);
מועיל! עכשיו, במקום לצרף ל-BlobBuilder
, אנחנו יכולים פשוט ליצור את Blob
ממערך של חלקי נתונים. חלקי הנתונים יכולים להיות מסוגים שונים (DOMString
, ArrayBuffer
, Blob
) ובכל סדר שהוא. לדוגמה:
var blob = new Blob(['1234567890', blob, arrayBuffer]);
כמו כן, שימו לב שפרמטר האובייקט השני הוא אופציונלי. מידע נוסף על השינויים האלה זמין במסמכי MDN בנושא Blob.