遇到一个状况以前在show pdf或者是image的时候常常会用iframe来崁入

但是不晓得不是被浏览器给改掉了还是本来就不行?

遇到pdf有很多页的时候就无法换到下一页

一开始我还以为只是Scrollbar的问题....

只要调整iframe或者是css就打完收工了.....

现在要显示pdf基本上两个网路上比较常见的方式

1. 使用google doc viewer 但是会有档案大小的限制外加上我觉得会有安全性的问题

2.使用mozilla  pdf.js。

用canvas
将viewer放在iis上viewer在github上面就可以下载
最后我采用viewer的解法我懒得在那边画然后还要放button来换页

因为手边是MVC所以就从CDN下载解压缩后放到你MVC Scripts的目录下

MySolution
  |__project
          |__Controllers
          |__Models
          |__Scripts
                  |__plugin
                        |__pdfjs-2.4.456-es5-dist
                                |__build -----这个要放进来
                                |__Web -----这个也要放进来

但是这个下载会把所有的语言包都一起载进来
可以在Web下locale资料夹内把你要的语言留下来即可请不要改动Web下原有的locale.property

改法也非常简单把原先要置换的src 判断确定这个网址的确是pdf后把这个档案放在viewer下就好

点击(此处)折叠或打开

  1. <script>
  2.     function OpenAttachSource(URL) {
  3.         $("#AttachFrame").attr("src",URL);
  4.         if(URL.toLowerCase().indexOf('.pdf')!=-1){
  5.             $("#AttachFrame").prop("src","/Scripts/plugin/pdfjs-2.4.456-es5-dist/Web/viewer.html?file="+$("#AttachFrame").prop("src"));
  6.         }    
  7.     }
  8.     function ShowAttach(fKey) {
  9.         $.ajax({
  10.             url: xxxurl,
  11.             type: "POST",
  12.             async: false,
  13.             data: "FileKey=" + fKey,
  14.             success: function (xml) {
  15.                 OpenAttachSource(URL);
  16.             }
  17.         });
  18.     }
  19. </script>
  20. <body >
  21.     <div id="content">
  22.         <iframe id="AttachFrame" src="" style="width:100%;height:700px;margin-top:5px"></iframe>
  23.     </div>
  24.    
  25. </body>
  26. </html>

那中文化?
先修改刚刚放套件Web下的viewer.html
[HTML]iframe 显示pdf 无法显示第2页解决方案-LMLPHP然后在IIS MIME类型新增
副档名:.properties
MIME类型:application/octet-stream
[HTML]iframe 显示pdf 无法显示第2页解决方案-LMLPHP
12-16 22:24