- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Stackoverflow 上随处可见这个特定的代码,许多人建议它需要从 FileReader()
转换为 URL.createObjectURL
这样做会使其速度更快,并且链接会更短。但我还没有找到可行的解决方案。 (这是一个图像预览脚本,在上传时显示图像缩略图)。
有人可以帮我转换它吗?
<script>
$(window).load(function(){
function readURL() {
var $input = $(this);
var $newinput = $(this).parent().parent().parent().find('.portimg ');
if (this.files && this.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
reset($newinput.next('.delbtn'), true);
$newinput.attr('src', e.target.result).show();
$newinput.after('<div class="delbtn delete_upload" title="Remove"><span class="bbb-icon bbb-i-remove2"></span></div>');
$("form").on('click', '.delbtn', function (e) {
reset($(this));
});
}
reader.readAsDataURL(this.files[0]);
}
}
$(".file").change(readURL);
function reset(elm, prserveFileName) {
if (elm && elm.length > 0) {
var $input = elm;
$input.prev('.portimg').attr('src', '').hide();
if (!prserveFileName) {
$($input).parent().parent().parent().find('input.file ').val("");
//input.fileUpload and input#uploadre both need to empty values for particular div
}
elm.remove();
}
}
});
</script>
最佳答案
如果我理解你的意思是正确的,你可能想要使用 URL.createObjectURL功能如下:
// your url will look like this
// blob:http://example.com/a298356a-ad76-4353-a35f-b6e22a0e792f
var url = URL.createObjectURL(this.files[0]);
完整代码:
function readURL() {
var $input = $(this);
var $newinput = $(this).parent().parent().parent().find('.portimg ');
if (this.files && this.files[0]) {
var url = URL.createObjectURL(this.files[0]);
reset($newinput.next('.delbtn'), true);
$newinput.attr('src', url).show();
$newinput.after(`
<div class="delbtn delete_upload" title="Remove">
<span class="bbb-icon bbb-i-remove2"></span>
</div>
`);
$("form").on('click', '.delbtn', function (e) {
reset($(this));
});
}
}
关于javascript - 将此代码从 FileReader() 更改为 URL.createObjectURL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59596674/
从 Firefox 开发者网站,我知道 Firefox 使用 objectURL = window.URL.createObjectURL(file); 获取文件类型的 url,但在 chrome 和
我正在尝试从后端将 PDF 加载为 JavaScript 中的 blob,但收到 Failed to execute 'createObjectURL' on 'URL': Overload reso
我正在使用以下 javascript 创建对象 url,唯一的问题是加载 url blob:http:///mysite.com/randomhash 文件已损坏。 var audioFile = n
我想将 window.URL.createObjectURL(file) 创建的地址传递给 dancer.js 但我得到 GET blob:http%3A//localhost/b847c5cd-aa
我想读取生成的图像并将其发送到服务器。 此代码生成图像。 var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function(){
下面是我的代码的屏幕截图: 最佳答案 我认为这只是外壳,请尝试vendorURL.createObjectURL(stream) URL.createObjectURL() 关于javascript
URL.createObjectURL(event.target.files[0] this makes me able to view the image just uploaded in the
我正在做一些Ajax调用,以从服务器接收一些Blob。我想使用URL.createObjectURL()方法在浏览器上显示它。根据docs,它必须接受一个对象。 我需要帮助,如何在PHP中将其作为对象
我正在尝试使用 URL.createObjectURL 显示图像。但是,它占用的内存非常大,大约是图像大小的 10 倍。这是我的代码: var image = new Image(); image.s
我知道使用 mediaSource 是可行的,但媒体源不支持所有视频格式(例如片段 mp4)。这是一个问题,因为我的应用程序没有可以修复文件的服务器。它只是一个客户端应用程序。 const blob
我的目标是拥有一个表单,该表单将 URL 提交到一个端点,该端点返回一个 PDF 的 base64 编码,该 PDF 显示在屏幕上没有 window.open 弹出窗口. 我想要的示例输出:https
我想弄清楚是我的代码有问题还是当前的 HTML5 文件 API 实现有问题。 下面的代码有效。在已经加载图像一次后重复该过程时会出现该错误。 第二次选择文件时,图像 blob 加载,然后闪烁,图像消失
我只是好奇如何获取包裹在 URL.createObjectURL 中的数据。 所以我写了下面的代码。 function typedArrayToURL(typedArray, mimeType) {
我正在使用 JavaFX 8 嵌入式 WebView。我想从 Blob 图像构建 Blob URL。但是, URL.createObjectURL 给了我未定义的信息。有没有什么方法(垫片或例如)在
我了解 window.URL.createObjectURL 创建的对象的生命周期与文档相关联。有什么方法可以更改目标文档吗? 我正在开发一个 chrome 扩展程序,我面临的问题是创建的 DOMSt
我正在构建一个在线 csv 转换器,允许用户上传 csv 文件并下载处理后的 csv 输出文件。一切正常,除了下载文件的名称看起来像“6fd665aa-74d7-4b4e-96e1-38aea0cca
我有这个加载文件功能,可以在上传后加载图像。我想转换以获取其 URL 路径...但是我收到错误“URL.createObjectURL 不是函数”但是当我控制 e.target .files[0],我
我正在尝试下载并显示 iFrame 内远程文件的内容,并且在除 IE 之外的所有浏览器中均成功(我正在尝试使用 IE 10)。我使用了 XMLHttpRequest、Blob、CreateOBject
我正在尝试在 Javascript 中创建一个 blob 来提供一个文件。但是,window.URL.createObjectURL(blob) 创建的链接会随着时间的推移而失效。我希望能够生成一个链
我正在开发一个网络应用程序,每个人都可以直接在互联网上编辑图像。 在开发网站时,我遇到了打开本地系统文件的大问题。 通常,我们可以使用如下两种已知的方式来做到这一点。 首先,使用FileReader。
我是一名优秀的程序员,十分优秀!