Javascript 如何打开此文件??或者下载,在新窗口中显示预览??我有pdf文件

Javascript 如何打开此文件??或者下载,在新窗口中显示预览??我有pdf文件,javascript,Javascript,这段代码直接保存文件,我想预览我的pdf文件 注意:我有纯文本内容,所以首先我必须创建pdf文件,然后打开或预览 function download(filename, text) { var element = document.createElement('a'); element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text)); element.setAttribut

这段代码直接保存文件,我想预览我的pdf文件 注意:我有纯文本内容,所以首先我必须创建pdf文件,然后打开或预览

function download(filename, text) {
 var element = document.createElement('a');
 element.setAttribute('href', 'data:text/plain;charset=utf-8,' +  encodeURIComponent(text));
 element.setAttribute('download', filename);

 element.style.display = 'none';
 document.body.appendChild(element);

 element.click();

 document.body.removeChild(element);
 }

使用对象标记嵌入pdf

var objectPDF = document.createElement("object");
objectPDF.data = 'data:application/pdf;base64,' +text;
objectPDF.type = 'application/pdf';
document.body.appendChild(objectPDF);
您也可以使用
iframe

如注释中所述,如果您只想在新窗口中显示文件,请删除
doanload
属性并添加
target=“\u blank”

要使其更简单,请使用
window.open()
而不是临时链接


使用对象标记嵌入pdf

var objectPDF = document.createElement("object");
objectPDF.data = 'data:application/pdf;base64,' +text;
objectPDF.type = 'application/pdf';
document.body.appendChild(objectPDF);
您也可以使用
iframe

如注释中所述,如果您只想在新窗口中显示文件,请删除
doanload
属性并添加
target=“\u blank”

要使其更简单,请使用
window.open()
而不是临时链接

试试这个

function download(filename, text) {
 var element = document.createElement('a');
 element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));

 element.style.display = 'none';
 document.body.appendChild(element);

 element.click();

 document.body.removeChild(element);
 }
试试这个

function download(filename, text) {
 var element = document.createElement('a');
 element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));

 element.style.display = 'none';
 document.body.appendChild(element);

 element.click();

 document.body.removeChild(element);
 }

使用嵌入元素保存pdf文件

var pdf = "pdf file link here";

    $('<div/>')
        .html('<embed class="fullFrame" ' +
              'type="application/pdf" ' +
              'src="' + pdf + '"></embed>')
        .dialog({
            autoOpen: true,
            modal: true,
            height: 400,
            width: 400,
            title: "Resume"
        });
var pdf=“此处的pdf文件链接”;
$('')
.html(“”)
.对话({
自动打开:对,
莫代尔:是的,
身高:400,
宽度:400,
标题:“简历”
});

使用嵌入元素保存pdf文件

var pdf = "pdf file link here";

    $('<div/>')
        .html('<embed class="fullFrame" ' +
              'type="application/pdf" ' +
              'src="' + pdf + '"></embed>')
        .dialog({
            autoOpen: true,
            modal: true,
            height: 400,
            width: 400,
            title: "Resume"
        });
var pdf=“此处的pdf文件链接”;
$('')
.html(“”)
.对话({
自动打开:对,
莫代尔:是的,
身高:400,
宽度:400,
标题:“简历”
});

使用嵌入pdf我没有文件位置,只有纯文本格式的内容请查看下面我的帖子。理想情况下,你应该有你的数据编码正确的pdf使用我没有文件位置,只是有纯文本格式的内容检查我的文章下面。理想情况下,您应该对数据进行正确编码。我想在新选项卡中打开pdf,我有div标记,所以pdf看起来很小。在这种情况下,请尝试使用snippet。添加
target=“_blank”
;让我知道它是否有效,我会更新我的帖子代码有效,但应该有“数据:应用程序/pdf”,还有一个问题是“链接位置栏”它以纯文本格式显示全部内容
data:text/plain
只是为了显示一个工作示例,您可以用
data:application/pdf
替换它。是,如果您使用“新建”选项卡中的链接打开内容,则内容将显示为链接的一部分。使用我在文章中提到的对象标记来避免这种行为,并在自己的弹出窗口中添加对象标记。我想在新选项卡中打开pdf,我有div标记,所以pdf看起来很小。在这种情况下,请尝试使用snippet。添加
target=“_blank”
;让我知道它是否有效,我会更新我的帖子代码有效,但应该有“数据:应用程序/pdf”,还有一个问题是“链接位置栏”它以纯文本格式显示全部内容
data:text/plain
只是为了显示一个工作示例,您可以用
data:application/pdf
替换它。是,如果您使用“新建”选项卡中的链接打开内容,则内容将显示为链接的一部分。使用我在帖子中提到的对象标记来避免这种行为,并在你自己的弹出窗口中添加对象标记。如果我错了,请纠正我,但我在问题中没有看到jquery标记。没有,但我只是想建议使用嵌入的操作。也许他们应该能够使用一些document.getElementById并使用javascript更改其src:)如果我错了,请纠正我,但我在问题中没有看到jquery标记没有,但我只是想建议OP使用embed可能他们应该能够使用一些document.getElementById并使用javascript更改其src:)这很好,但它不会在同一窗口中打开文件,替换所有内容。您应该添加
element.setAttribute(“target”和“_blank”)
;这很好,但它不会在同一窗口中打开文件,替换所有内容。您应该添加
element.setAttribute(“target”和“_blank”)