javascript - FileReader 无法在 iOS 8 上运行
<p><p>我无法让 FileReader 在 iOS 8 中工作。以下演示说明了这一点(iOS 的 jsFiddle 链接 - <a href="http://jsfiddle.net/gys6rubg/1/" rel="noreferrer noopener nofollow">http://jsfiddle.net/gys6rubg/1/</a>):</p>
<p></p><div class="snippet"data-lang="js"data-hide="false">
<div class="snippet-code">
<pre class="snippet-code-js lang-js prettyprint-override"><code>var file = document.getElementById('file-input');
file.addEventListener('change', function(event) {
var file = this.files;
if(!file) {
alert('No file');
return;
}
var reader = new FileReader();
var timeout = setTimeout(function() {
alert('FileReader not functioning');
}, 500);
reader.onload = function(event) {
clearTimeout(timeout);
alert('Base64 length - ' + event.target.result.length);
};
reader.readAsDataURL(file);
});</code></pre>
<pre class="snippet-code-html lang-html prettyprint-override"><code><form>
<input id="file-input" type="file" />
</form></code></pre>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>我在 iPhone 上使用 Safari 时遇到了同样的问题(但在 iPhone 版 Chrome 上不存在这个问题!)。</p>
<p>如果添加错误事件处理程序:</p>
<pre><code>reader.onerror = function (e) {
alert("error " + e.target.error.code + " \n\niPhone iOS8 Permissions Error.");
}
</code></pre>
<p>您将收到错误代码 4。
根据 <a href="http://www.htmlgoodies.com/html5/other/responding-to-html5-filereader-events.html#fbid=l9ZUvxZTK1W" rel="noreferrer noopener nofollow">HTMLGoodies - Responding to HTML5 FileReader Events</a> </p>
<p>错误代码 4 = NOT_READABLE_ERR:由于在获取文件后权限发生更改,因此无法读取该文件 - 可能是因为该文件已被另一个程序锁定。</p></p>
<p style="font-size: 20px;">关于javascript - FileReader 无法在 iOS 8 上运行,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/25999083/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/25999083/
</a>
</p>
页:
[1]