3

次の最小限の HTML ファイルでは、ブラウザのコンソールでエラーが発生します。FileChrome の Web ワーカーからアクセスした場合は未定義です。

私はこれにやや困惑しています: Firefox で完全にうまく機能しており、Chrome の開発バージョンでこれが既に解決されていることを期待しています (問題は Chrome 22、23、および 24 に存在するようです)。

何か不足していますか、それとも Chrome で動作させるための回避策はありますか (または他のブラウザーでもかまいません)。

<html>
<body>
<script type="text/javascript">
// File seems to be defined
var slice = File.prototype.webkitSlice;

window.URL = window.URL || window.webkitURL;
// File is not defined when creating the worker below
var blob = new Blob(["var slice = File.prototype.webkitSlice;"]);
var blobURL = window.URL.createObjectURL(blob);

// Getting:
// Uncaught TypeError: Cannot read property 'prototype' of undefined 
var worker = new Worker(blobURL);
</script>
</body>
</html>
4

2 に答える 2

2

に変更FileするBlobと、スクリプトが機能します。Fileから継承しBlobます。

var blob = new Blob(["var slice = Blob.prototype.webkitSlice;"]);

フォローしている人のために:crbug.com/147503

于 2012-12-04T06:13:02.620 に答える
0

WebkitSliceは chrome の最新バージョンでは非推奨になっているため、slice代わりに使用してください。そしてそれを使う

エビデルが述べたように

var blob = new Blob(["var slice = Blob.prototype.slice;"]);
于 2013-01-23T07:50:22.153 に答える