87,922
社区成员
发帖
与我相关
我的任务
分享
var fileUrl = "${pdfUrl}";
//定义全局变量
var DEFAULT_URL ;
var path = "${resourcesPath}";
$(document).ready(function(){
$.ajax({
type:"post",
async: false,
contentType:"application/pdf;charset=utf-8",
url:fileUrl,
success:function(data){
var pdfAsDataUri = data;
var pdfAsArray = convertDataURIToBinary(pdfAsDataUri);
DEFAULT_URL = pdfAsArray;
}
});
});
function convertDataURIToBinary(dataURI) {
var rawLength = dataURI.length;
var array = new Uint8Array(new ArrayBuffer(rawLength));
for(i = 0; i < rawLength; i++) {
array[i] = dataURI.charCodeAt(i) & 0xff;
}
return array;
}
var queryString = document.location.search.substring(1);
var params = parseQueryString(queryString);
var file = 'file' in params ? params.file : DEFAULT_URL;
if (file && file.lastIndexOf('file:', 0) === 0) {
// file:-scheme. Load the contents in the main thread because QtWebKit
// cannot load file:-URLs in a Web Worker. file:-URLs are usually loaded
// very quickly, so there is no need to set up progress event listeners.
PDFViewerApplication.setTitleUsingUrl(file);
var xhr = new XMLHttpRequest();
xhr.onload = function() {
PDFViewerApplication.open(new Uint8Array(xhr.response), 0);
};
try {
xhr.open('GET', file);
xhr.responseType = 'arraybuffer';
xhr.send();
} catch (e) {
PDFViewerApplication.error(mozL10n.get('loading_error', null,
'An error occurred while loading the PDF.'), e);
}
return;
}