Angularjs 如何显示所选文档的预览

Angularjs 如何显示所选文档的预览,angularjs,file,iframe,filereader,preview,Angularjs,File,Iframe,Filereader,Preview,如何显示文档的预览。readasDataUrl是否也可用于预览.pdf、.xls文件 var reader = new FileReader(); reader.readAsDataURL($files[i]); reader.onload = function (loadEvent) { $scope.$apply(function () { $scope.dataUrlss = loadEvent.target.result; }); }; v

如何显示文档的预览。readasDataUrl是否也可用于预览.pdf、.xls文件

var reader = new FileReader();
    reader.readAsDataURL($files[i]);
    reader.onload = function (loadEvent) {
    $scope.$apply(function () {
       $scope.dataUrlss = loadEvent.target.result;
    });
};

var doc = document.getElementById('FileFrame').contentWindow.document;
doc.open();
doc.write($scope.dataUrlss);
doc.close();
我的iframe标签是

 <iframe id="FileFrame" src="about:blank" style="height: 900px; width: 700px;"></iframe>

那个解决方案对我不起作用。请帮帮我。提前谢谢…

这个方法有效():

var reader=newfilereader();
reader.addEventListener(“加载”),函数(事件){
var div=document.createElement(“div”);
div.innerHTML
= '' 
+ '' 
+ '';
output.insertBefore(div,null);
});
//读文件
reader.readAsDataURL(文件);
部分代码,完整内容见小提琴。我没有把它放在angular或iframe中,但问题是这两种技术都没有,而是它的插入方式。这可以很容易地进行修改,以便同时使用这两种方法。某些文档类型(如xls或xlsx)可能需要额外的工作,或者根本无法嵌入。

此功能():

var reader=newfilereader();
reader.addEventListener(“加载”),函数(事件){
var div=document.createElement(“div”);
div.innerHTML
= '' 
+ '' 
+ '';
output.insertBefore(div,null);
});
//读文件
reader.readAsDataURL(文件);
部分代码,完整内容见小提琴。我没有把它放在angular或iframe中,但问题是这两种技术都没有,而是它的插入方式。这可以很容易地进行修改,以便同时使用这两种方法。某些文档类型(如xls或xlsx)可能需要额外的工作,或者根本无法嵌入。

此功能():

var reader=newfilereader();
reader.addEventListener(“加载”),函数(事件){
var div=document.createElement(“div”);
div.innerHTML
= '' 
+ '' 
+ '';
output.insertBefore(div,null);
});
//读文件
reader.readAsDataURL(文件);
部分代码,完整内容见小提琴。我没有把它放在angular或iframe中,但问题是这两种技术都没有,而是它的插入方式。这可以很容易地进行修改,以便同时使用这两种方法。某些文档类型(如xls或xlsx)可能需要额外的工作,或者根本无法嵌入。

此功能():

var reader=newfilereader();
reader.addEventListener(“加载”),函数(事件){
var div=document.createElement(“div”);
div.innerHTML
= '' 
+ '' 
+ '';
output.insertBefore(div,null);
});
//读文件
reader.readAsDataURL(文件);

部分代码,完整内容见小提琴。我没有把它放在angular或iframe中,但问题是这两种技术都没有,而是它的插入方式。这可以很容易地进行修改,以便同时使用这两种方法。有些文档类型(如xls或xlsx)可能需要额外的工作,或者根本无法嵌入。

我非常确定,如果您希望在其中嵌入,您必须将iframe数据的类型设置为PDF。如果你能制作一个小的JSFIDLE,我可以看看我是否能解决一些问题。我非常确定,如果你想要的是PDF格式的话,你必须将iframe数据的类型设置为PDF格式。如果你能制作一个小的JSFIDLE,我可以看看我是否能解决一些问题。我非常确定,如果你想要的是PDF格式的话,你必须将iframe数据的类型设置为PDF格式。如果你能制作一个小的JSFIDLE,我可以看看我是否能解决一些问题。我非常确定,如果你想要的是PDF格式的话,你必须将iframe数据的类型设置为PDF格式。如果你能做一个小的JSFIDLE,我可以看看我是否能解决一些问题。谢谢你的回答,它是pdf文件的工作文件,但当我谈到xls或xlsx文件时,它显示的一些插件丢失了xls/x更难嵌入。它可能需要安装MS Office Web组件或类似的东西。您也可以将其转换为google文档并显示,但存在兼容性问题谢谢您的回答,它是pdf文件的工作文件,但当我谈到xls或xlsx文件时,它显示的一些插件丢失了xls/x更难嵌入。它可能需要安装MS Office Web组件或类似的东西。您也可以将其转换为google文档并显示,但存在兼容性问题谢谢您的回答,它是pdf文件的工作文件,但当我谈到xls或xlsx文件时,它显示的一些插件丢失了xls/x更难嵌入。它可能需要安装MS Office Web组件或类似的东西。您也可以将其转换为google文档并显示,但存在兼容性问题谢谢您的回答,它是pdf文件的工作文件,但当我谈到xls或xlsx文件时,它显示的一些插件丢失了xls/x更难嵌入。它可能需要安装MS Office Web组件或类似的东西。您也可以将其转换为谷歌文档并显示出来,但存在兼容性问题
var reader = new FileReader();

reader.addEventListener("load", function (event) {

    var div = document.createElement("div");
    div.innerHTML
        = '<object data="' 
        + reader.result 
        + '" type="'+file.type+'">' 
        + '<embed src="' 
        + reader.result 
        + '" type="'+file.type+'" />' 
        + '</object>';
        output.insertBefore(div, null);

});

//Read the file
reader.readAsDataURL(file);