- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个代码编辑器,我可以在其中检查我想要的库,只要说 Normalize或 FontAwesome ,来 self 服务器的 zip 文件被加载到 JSZip这样,当我导出我的代码时,我所有的库都将合并到 zip 文件中,而无需超链接。
要加载的所有库(确切地说是 38 个)都在我的服务器上。但是我只将文件加载到 JSZip 中的 zip 文件中。通过关注Filereader和 AJAX来自 JSZip's 上列出的演示网站。
基本上我正在尝试将多个 zip 文件加载到一个新的 jszip 包中。
$(document).ready(function() {
var download_to_textbox = function (url, el) {
return $.get(url, null, function (data) {
el.val(data);
}, 'text');
};
// Add/Remove Libraries
$("[data-action=check]").on("change", function() {
if ( $("#jquery").is(":checked") ) {
$('.jquery').val(""); download_to_textbox('http://code.jquery.com/jquery-latest.min.js', $('.jquery'));
$('.jquery').trigger("change");
$(".jqueryzip").val(" zip.file('js/jquery.js', $('.jquery').val());");
} else {
$('.jqueryzip').val("");
}
if ( $("#bootstrap").is(":checked") ) {
$('.bootstrap').val(""); download_to_textbox('http://getbootstrap.com/dist/css/bootstrap.css', $('.bootstrap1')); download_to_textbox('http://getbootstrap.com/dist/js/bootstrap.js', $('.bootstrap2'));
$('.bootstrap1, .bootstrap2').trigger("change");
$(".bootstrapzip").val("zip.file('css/bootstrap.css', $('.bootstrap1').val());\n zip.file('js/bootstrap.js', $('.bootstrap2').val());");
} else {
$('.bootstrapzip').val("");
}
$("[data-action=fulljszipfilescode]").val(function() {
return $.map($(".jszippackage"), function (el) {
return el.value;
}).join("\n");
});
$(".jszippackage").trigger("change");
$("[data-action=fulljszipcode]").val(function() {
return $.map($(".jszipcode"), function (el) {
return el.value;
}).join("\n");
});
$("[data-action=fulljszipcode]").val("$('[data-action=download]').unbind().click(function() {\n var zip = new JSZip();\n zip.file('Hello.txt', 'Hello World');\n " + $("[data-action=fulljszipfilescode]").val() + "\n var content = zip.generate({type:'blob'});\n saveAs(content, '123test.zip');\n});");
$("#applyscript script").remove();
$("#applyscript").append("<scr" + "ipt>" + $("[data-action=fulljszipcode]").val() + " </scr" + "ipt>");
});
});
.hide {
display: none;
}
.txtcenter {
text-align: center;
}
.fill {
width: 100%;
}
.hide {
display: none;
}
<link href="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet">
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script src="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="http://stuk.github.io/jszip/dist/jszip.min.js"></script>
<script src="http://stuk.github.io/jszip-utils/dist/jszip-utils.js"></script>
<script src="http://stuk.github.io/jszip/vendor/FileSaver.js"></script>
<div class="container">
<div class="form-group txtcenter">
<a class="btn btn-primary btn-lg fill" data-action="download">Download</a>
</div>
<div class="form-group">
<textarea class="form-control" data-action="fulljszipcode"></textarea>
<textarea class="form-control" data-action="fulljszipfilescode"></textarea>
</div>
<div class="form-group">
<label class="checkbox">
<input data-action="check" type="checkbox" id="bootstrap">
Bootstrap (latest)
</label>
</div>
<div class="form-group">
<textarea class="form-control jszipcode bootstrap bootstrap1"></textarea>
</div>
<div class="form-group">
<textarea class="form-control jszipcode bootstrap bootstrap2"></textarea>
</div>
<div class="form-group">
<textarea class="form-control bootstrapzip jszippackage"></textarea>
</div>
<div class="form-group">
<label class="checkbox">
<input data-action="check" type="checkbox" id="jquery">
JQuery (latest)
</label>
<textarea class="form-control jszipcode jquery"></textarea>
</div>
<div class="form-group">
<textarea class="form-control jqueryzip jszippackage"></textarea>
</div>
<div id="applyscript" class="hide"></div>
</div>
最佳答案
那么如果我正确理解你的问题,你想压缩存储在你服务器上的库吗?
如果是这样,您可以使用 XMLHttpRequest 来获取内容并将其压缩,如下所示:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JSZip sample</title>
</head>
<body>
<button>Download</button>
<script src="https://cdnjs.cloudflare.com/ajax/libs/FileSaver.js/2014-11-29/FileSaver.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/2.5.0/jszip.min.js"></script>
<script>
document.querySelector("button").addEventListener("click", function() {
var zip = new JSZip()
zip.file('hi.txt', 'Hi there')
var xhr = new XMLHttpRequest();
xhr.onload = function() {
zip.file('jquery.min.js', this.responseText)
var downloadFile = zip.generate({type:"blob"});
saveAs(downloadFile, 'test.zip')
}
xhr.open('get', 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0-alpha1/jquery.min.js')
xhr.send()
})
</script>
</body>
</html>
关于javascript - 在 JSZip 中打包外部文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31769524/
我正在尝试使用 zip 文件“发布”和 xhr 请求,但我无法获得正确格式的 zip。我找到了一个显示类似请求的帖子: var zip = new JSZip(); // create the jsz
我正在使用 js-xlsx用于在 JavaScript 中创建 Excel 文件的库。 这个库使用jszip。我试图在加载 jszip 之前在我的 JavaScript 文件中定义 jszip 库,但
我在 Angular 7 应用程序中使用 jszip v3.2.1。当我构建我的项目时(例如,运行 npm start),我收到以下错误: ERROR in ./node_modules/jszip/
早上好,我正在使用 JSZip 创建 zip,我有以下代码: for (var i = 0, f; f = content[i]; i++) { var zip = new JSZip();
压缩包名称:testing.zip 当我提取文件时 测试\https_\s3-us-west-2.amazonaws.com\files\image.jpg 预期结构:testing/image.jp
有人可以解释一下,jszip 怎么可能不压缩文件?我正在尝试使用压缩,压缩后的 zip 文件大小大于内部未压缩文件的文件大小。我做错了什么吗? var fs = require("fs"); var
我有一个 Electron 应用程序,使用 jszip 创建一个 zip 文件,然后用户可以保存该文件。一切正常,但我的问题是我的应用程序使用用户下载文件夹。我猜它正在制作一个临时文件。我已将我的应用
是否可以使用 JSZip 在循环中创建真正的 zip 文件夹和文件,每个元素一个?如果是这样,怎么办? 类似这样的事情: var JSZip = require("jszip"); const sav
我的 Node.js 应用程序内存消耗很高,当一个接一个地加载 ~100MB zip 文件时,它会将它们作为“NodeBufferReader”保留在内存中。我正在使用的库称为 JSZip,可在此处找
我正在通过执行以下操作使用 JSZip 提取一个 zip 文件: jszip.loadAsync(zipFile) ['then'](function(zip) { return bluebi
我有一个奇怪的问题,typescript 找不到 jszip 的类型。 其他类型工作正常 类型似乎在正确的位置 在我的源文件中,我使用了这些导入,例如 import * as fast_csv fro
var zip = new JSZip(); zip.file("Hello.txt", "Hello World\n"); var img = zip.folder("images"); img.f
我使用 FileReader API 将输入文件的内容加载到浏览器内存中。这个 jsfiddle 包含一个工作示例: https://jsfiddle.net/qyh1s60d/ 我将结果转换为 Ui
我正在使用 JSZip 将一组图像捆绑在页面上并创建一个 zip 文件来存储它们。相关函数如下: // Make a zip file $("#snapLink").click(function()
我正在开发一个代码编辑器,我可以在其中检查我想要的库,只要说 Normalize或 FontAwesome ,来 self 服务器的 zip 文件被加载到 JSZip这样,当我导出我的代码时,我所有的
我想要压缩并下载一个文件夹。我似乎无法找出如何。 JSZip 似乎只能下载文件。 我不想使用 PHP。 最后一件事,我希望通过链接下载它,例如下载。 最佳答案 只要继续调用 zip.file() 即可
我已经编写了一个 zip 下载,但我面临的问题是我无法为 .zip 提供自定义文件名它不断给我一些随机名称,例如“ff22f3dc-24dc-” 41cb-b83d-06acef1694d0.zip”
我正在做一些网络应用程序的本地开发,需要从客户端的一些文件创建一个 zip 存档。我有一个非常简单的测试页面,带有按钮和下载链接。单击该按钮会使用 jszip library 生成一个 zip 文件。
我正在使用 HTML5 和移动版 jquery 开发离线应用程序。我想使用 jszip 从本地存储备份文件。下面是我所做的代码片段...... if (localStorageKeys.lengt
使用 JSZip , 有没有办法在压缩文件中编辑文件? 我已经尝试寻找解决方案并通过 API,但我似乎无法找到解决方案。 任何帮助都会很棒!提前致谢! 最佳答案 您可以使用 .file 方法编辑 zi
我是一名优秀的程序员,十分优秀!