38 lines
No EOL
1.5 KiB
HTML
38 lines
No EOL
1.5 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
</head>
|
|
<body>
|
|
<iframe id="iframe" sandbox="allow-scripts allow-downloads allow-downloads-without-user-activation"></iframe>
|
|
<script type="text/javascript">
|
|
const iframeHtml = `
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
</head>
|
|
<body>
|
|
<button id="download">Download</button>
|
|
<a id="link" href="#">Link to progamatically click</a>
|
|
<script type="text/javascript">
|
|
var link = document.getElementById("link");
|
|
var button = document.getElementById("download");
|
|
function download(str, filename) {
|
|
var url = "data:text/plain;base64," + btoa(str);
|
|
link.href = url;
|
|
link.download = filename;
|
|
link.innerText = url;
|
|
link.click();
|
|
URL.revokeObjectURL(url);
|
|
}
|
|
button.addEventListener("click", function(event) {
|
|
download("hello world", "hello world.txt");
|
|
});
|
|
</${"script"}>
|
|
</body>
|
|
</html>`;
|
|
document.getElementById("iframe").setAttribute("srcdoc", iframeHtml);
|
|
</script>
|
|
</body>
|
|
</html> |